Kafka为一个分区的多个消费者

时间:2015-06-04 15:06:12

标签: apache-kafka kafka-consumer-api

我有一个生产者,它将消息写入主题/分区。为了维护订单,我想使用单个分区,我希望12个消费者阅读来自这个单独分区的所有消息(没有消费者群体,所有消息应该发送给所有消费者)。这可以实现吗?我读了一些论坛,每个分区只有一个消费者可以阅读。

2 个答案:

答案 0 :(得分:14)

您可以使用SimpleConsumer来实现您的要求 - 没有消费者群体,所有消费者都可以阅读单个分区。但是,这种方法意味着您必须自己处理偏移存储和代理故障处理。

另一种选择是使用具有不同消费者群体的高级消费者(您可以为每个消费者分配一个随机UUID)。这样,您就可以为所有使用者使用一个主题/分区,并能够提交偏移并处理代理中断。

“只有一个消费者可以使用主题/分区”的规则仅适用于消费者群体,例如只有一个消费者IN GROUP可以同时使用一个主题/分区。

答案 1 :(得分:0)

如果同一分区上有多个使用者,则会超出维护订购的初始要求。 虽然,你会订购存储,但消费将无法订购。确保你真的很好。如果是,您可以将每个消费者视为不同的消费者群体。