在 Kafka 中,影响属性("重试"除外)的消息顺序



我们已经知道max.in.flight.requests.per.connection到1可能会改变记录的顺序,因为如果将两个批处理发送到单个分区,并且第一个批处理失败并重试,但第二个成功,那么第二个批处理中的记录可能会首先出现。 由于此属性可能会影响 Kafka 中消息的顺序。 现在这里的问题是除了这个停用的属性设置之外,还有其他属性会影响消息的顺序吗?

如果交货顺序对您至关重要。如果您正在寻找消息的有序传递,则有以下两种选择。

Use synchronous send.
use asynchronous send and set max.in.flight.requests.per.connection to 1

最新更新