如果一个生产者有3个主题,每个主题有4个分区,那么使用者组应该包含4个还是12个使用者? 我想实现理想的消费。
答案 0 :(得分:0)
每个consumer
应该有一个partition
,才能达到理想的消费水平。因此,对于您的情况,理想的是12个消费者。
答案 1 :(得分:0)
如果有N个分区,则在同一使用者组中最多可以有N个使用者,每个使用者都从一个分区读取。当使用者少于分区时,某些使用者将从多个分区中读取数据。另外,如果您的使用者数量大于分区数量,则某些使用者将处于非活动状态,并且根本不会收到任何消息。
在同一个使用者组中,不能有多个使用者使用同一分区中的数据。因此,为了使用N个使用者使用同一分区中的数据,您还需要创建N个不同的使用者组。
请注意,分区增强了Kafka集群内的并行性。如果您创建了数千个使用者以仅从一个分区使用数据,那么我怀疑您将失去某种程度的并行性。