У меня есть приложение Spring Boot, использующее Spring-Kafka, и я использую fast-data-dev от landoop в докере в качестве моего кластера kafka. Я создаю сообщения по какой-то теме, используя шаблон kafka, avro и реестр схем confluent. Кажется, все работает нормально, однако, когда я вхожу в интерфейс fast-data-dev, я вижу, что моя схема зарегистрирована, и все же мои сообщения отображаются как Data type: binary
вместо 'avro', и поэтому их значения не читаются в пользовательском интерфейсе. Я попытался отправить несколько сообщений с помощью kafka-avro-console-maker в другую тему, и для этих сообщений нет такой проблемы - они отображаются как avro и читаются в пользовательском интерфейсе. Однако, когда я отправляю сообщение с помощью kafka-avro-console-производителя в ту же тему, в которую мое приложение отправляло сообщения, оно отображается так же, как сообщения, отправленные моим приложением (как двоичные).
Мне что-то не хватает в Spring-Kafka, добавляющем заголовки типов данных? А может быть, причина совсем в другом?
Вот часть моего application.yml:
spring.kafka:
bootstrap-servers: localhost:9092
producer:
key-serializer: org.apache.kafka.common.serialization.StringSerializer
value-serializer: io.confluent.kafka.serializers.KafkaAvroSerializer
properties:
schema.registry.url: http://localhost:8081
Кроме того, когда я использую локально установленную конфлюентную платформу, сообщения доступны для чтения, так что, возможно, проблема где-то в образе fast-data-dev?