Я хочу обработать случай, если Kafka Broker не работает на конце Kafka Producer, тогда потребуется больше времени, чтобы показать ошибку ниже.
Не удалось отправить; вложенное исключение - org.apache.kafka.common.errors.TimeoutException: истекает срок действия 1 записи для ведения журнала-0: с момента создания пакета прошло 30030 мс, плюс время задержки
Как с этим справиться?
Производитель ждет request.timeout.ms
ответа от брокера.
The configuration controls the maximum amount of time the client will wait for the response of a request. If the response is not received before the timeout elapses the client will resend the request if necessary or fail the request if retries are exhausted. This should be larger than replica.lag.time.max.ms (a broker configuration) to reduce the possibility of message duplication due to unnecessary producer retries.
По умолчанию установлено значение 30000 мс. Будьте осторожны, если вы попытаетесь уменьшить его, как если бы он был слишком коротким, это может привести к слишком быстрой повторной попытке производителя и созданию дубликатов.
См. В документации по настройке брокера: kafka.apache.org/documentation/#brokerconfigs
Также см. max.block.ms
в этом ответе, который может повлиять на получение метаданных при первом запуске приложения и отключении брокера.
Я не могу найти replica.lag.time.max.ms в server.properties, не могли бы вы рассказать, как это настроить в брокере