这是关于Kafka以及如何消费消息的一个非常基本的问题,但不幸的是,我无法在这一点上找到任何答案:'(。
让我们说我想过分区,所以我会得到比消费者多10倍的分区。需要过分区,因为我希望能够扩展(将来并行处理更多消息)。
1个主题划分为100个消费者消耗的1000个分区= - >每个消费者被分配10个分区。
我的问题是:
如何为每个消费者消费消息:它是以循环方式完成的吗?如果没有,分发是如何完成的?
是否可以保证消费者在分配给它们的10个分区之间均匀消费消息?是否存在某些分区永远不会消耗的风险?
我在这一点上找不到任何答案。抱歉,如果它重复了!
答案 0 :(得分:1)
消息的消费是在分配给消费者的分区集之间以循环方式完成的。
不,不能保证消息将在分区之间平均消耗。在KIP-41的文档中,当您可以指定消息数时,您可以看到explanation如何工作