Можем ли мы установить конфигурацию производителя в «delivery.timeout.ms», используя org. apache .kafka.clients.producer.ProducerConfig - PullRequest
0 голосов
/ 13 февраля 2020

Мы используем spring-kafka-2.2.7.RELEASE для создания и использования сообщений avro и используем реестр схемы для проверки схемы с помощью FORWARD_TRANSITIVE в качестве типа совместимости. Теперь я пытаюсь понять, есть ли возможность установить пользовательское значение для конфигурации производителя «delivery.timeout.ms»?

1 Ответ

1 голос
/ 13 февраля 2020

Если вы не используете Spring Boot, вы можете просто установить свойство в вашей карте конфигурации производителя, используемой для создания фабрики производителя.

Если вы используете Spring Boot (добавьте тег в будущем), см. документацию Boot об интеграции spring-kafka .

Свойства, поддерживаемые автоматической настройкой, показаны в приложении. -Применение-свойство. html. Обратите внимание, что по большей части эти свойства (через дефис или camelCase) отображаются непосредственно на свойства Apache Кафки с точками. Подробнее см. Документацию Apache Kafka.

Первые несколько из этих свойств применяются ко всем компонентам (производителям, потребителям, администраторам и потокам), но могут быть указаны на уровне компонентов, если вы wi sh использовать разные значения. Apache Кафка обозначает свойства с важностью ВЫСОКИЙ, СРЕДНИЙ или НИЗКИЙ. Автоконфигурация Spring Boot поддерживает все свойства высокой важности, некоторые выбранные свойства MEDIUM и LOW и любые свойства, которые не имеют значения по умолчанию.

Только подмножество свойств, поддерживаемых Kafka, доступно непосредственно через KafkaProperties учебный класс. Если вы хотите sh настроить производителя или потребителя с дополнительными свойствами, которые не поддерживаются напрямую, используйте следующие свойства:

spring.kafka.properties.prop.one=first
spring.kafka.admin.properties.prop.two=second
spring.kafka.consumer.properties.prop.three=third
spring.kafka.producer.properties.prop.four=fourth
spring.kafka.streams.properties.prop.five=fifth

Это устанавливает общее свойство prop.one Kafka во-первых (относится к производителям, потребителям и администраторам), свойство admin prop.two - ко второму, свойство потребителя prop.three - к третьему, свойство производителя prop.four - к четвертому, а свойство prop.five - к пятому.

...