【发布时间】:2018-01-13 17:17:59
【问题描述】:
如何在 kafka 中发送同步消息?
实现它的一种方法是设置属性参数max.in.flight.requests.per.connection = 1。
但我想知道是否有在 kafka 中发送同步消息的直接或替代方式。 (类似于 producer.syncSend(...) 等)。
【问题讨论】:
-
你能解释一下你为什么想要那个吗?如果这是关于消息排序保证,这可能会更复杂一些(并且同步发送它们并不会真正改变那里的事情)。
-
同一生产者发送到同一主题中同一分区的消息将保留该顺序。跨多个分区、主题或生产者没有排序保证。如果需要,您必须在应用程序代码的消费者端安排消息(例如通过查看消息时间戳)。
-
@Thilo,这让我想到了另一个问题。每个分区或每个主题或每个生产者的批次?或者这些的某种组合。 ?
标签: apache-kafka kafka-producer-api