Kafka生产者批量超时

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

通过设置 batch.size 我们告诉制作者批量处理记录,直到记录的大小达到该限制,然后发送它们。有一个奇怪的配置 linger.ms ,也就是说如果制作人想发送唱片 batch.size 不伸手等多了。
我的问题是,制作人怎么可能在唱片的大小达到最大值之前发送唱片呢 batch.size ? 我认为等待批处理有一个超时,如果有一些配置,它是什么?
我把我的制作人 batch.size 但制作者发送记录时没有考虑这个限制。

kokeuurv

kokeuurv1#

您正在搜索的参数 linger.ms . 它的默认值是0,这意味着生产者将尽快(当发送者线程可用时)发送消息,而不会有任何延迟,即使 batch.size 未到达。条件是生产者在 batch.size 到达或 linger.ms 时间到了。如果希望生产者只在 batch.size 你应该增加 linger.ms 时间(大于0),并确保应用程序能够在为批处理设置的值之前生成填充批处理的消息 linger.ms 时间;只有在这种情况下,生产者才会发送消息,因为 batch.size 而不是为什么 linger.ms 已过期。当然,增加 linger.ms 意思是在你没有到达目的地的时候增加发送消息的延迟 batch.size 但无论如何你都想发信息。

相关问题