卡夫卡消费群体中的消费者数量

时间:2020-06-01 10:52:56

标签: apache-kafka spring-kafka kafka-partition

如果一个生产者有3个主题,每个主题有4个分区,那么使用者组应该包含4个还是12个使用者? 我想实现理想的消费。

2 个答案:

答案 0 :(得分:0)

每个consumer应该有一个partition,才能达到理想的消费水平。因此,对于您的情况,理想的是12个消费者。

答案 1 :(得分:0)

如果有N个分区,则在同一使用者组中最多可以有N个使用者,每个使用者都从一个分区读取。当使用者少于分区时,某些使用者将从多个分区中读取数据。另外,如果您的使用者数量大于分区数量,则某些使用者将处于非活动状态,并且根本不会收到任何消息。

在同一个使用者组中,不能有多个使用者使用同一分区中的数据。因此,为了使用N个使用者使用同一分区中的数据,您还需要创建N个不同的使用者组。

请注意,分区增强了Kafka集群内的并行性。如果您创建了数千个使用者以仅从一个分区使用数据,那么我怀疑您将失去某种程度的并行性。