java—用于故障转移和恢复的最佳kafka生产者选项

gijlo24d  于 2021-06-07  发布在  Kafka
关注(0)|答案(1)|浏览(281)

我想微调 KafkaTemplate 生产者的选项,以尽可能最佳地处理各种故障转移和恢复场景。
我们有自己的 KafkaProducerMessageHandler 磨合 sync 模式(即等待发送操作结果-请参阅: acks 下面)。注意:在当前版本的kafka中,这是启用errorchannel报告所必需的。
以下是我选择的选项: acks = 1 (我们正在执行Kafka经纪人领导的基本确认)
retries = 10 max.in.flight.requests.per.connection = 1 (如果达到错误状态,这将使消息保持有序) linger.ms = 1 (不确定是否与此相关?) request.timeout.ms = 5000 (超时时间为5秒,这将与重试一起工作-因此,在消息被视为失败并随后出现在错误通道上之前,总时间为50秒) enable.idempotence = false (再说一遍,不确定这个选项?) retry.backoff.ms = 100 (这是默认设置-是否值得一玩?)
这些价值观听起来如何?我有什么遗漏吗?

3qpi33ja

3qpi33ja1#

这是一篇关于Kafka制作人调整的老帖子:http://ingest.tips/2015/07/19/tips-for-improving-performance-of-kafka-producer/
tldr版本:
注意“batch.size”和“linger.ms”参数。

相关问题