Kafka 消费者组 - 没有分区 - 没有复制

Kar*_*raj 1 apache-kafka kafka-consumer-api

试图理解复制因子和消费者组之间的关系。示例:分区数 = 2 复制数 = 3 消费者组中的消费者数 = 4。在这种情况下 ,

  1. 有多少消费者会收到消息?
  2. 如何此复制将影响消费者接收的数量。

mju*_*rez 5

  • 对于您的第一个问题,由于您的示例中有两个分区,因此 4 个消费者中只有 2 个会实际获取数据。其他两个消费者不会有任何分区分配给他们,因为该消费者组没有任何分区。如果您有不同的消费者组,那么这些消费者仍将被分配分区。

  • 此外,在这种情况下,您提到只有一条消息通过。根据分配给哪个分区,消息将发送到该分区。因此,在这种情况下,四个消费者中只有一个会收到消息,即分配给该分区的那个。

  • 至于你的第二个问题,Kafka中的复制因子配置不会影响消费者收到的消息数量。复制,就消费者和生产者而言,是他们不需要担心的内部 kafka 集群细节。只要他们在分区的领导者之间生产/消费,这就是他们需要知道的全部。一个主题可以具有复制因子 2,另一个可以具有复制因子 10,并且它们对生产者和消费者的行为都相同。

Kafka 官方文档中有更多细节:https : //kafka.apache.org/documentation/#theconsumer