kafka 多个消费者消费同一个分区
终极管理员 知识笔记 62阅读
多个kafka消费者可以同时消费相同Topic下的相同partition的数据吗?
答:多个Kafka消费者要想同时消费相同Topic下的相同Partition的数据,则需要将这些Kafka消费者放到不同的消费者组中。 写下你的评论... 条评论被折叠 ( 为什么?
为什么每个消费者组都可以拿到kafka Topic中的全部数据?
答:对于同一个Topic(主题)来说,每个消费者组都可以拿到这个Topic中的全部数据。 消费者组内的所有消费者协调在一起来订阅并消费Kafka Topic中的所有分区。 这里,每个分区只能由同一个消费者组内的一个消费者来消费。 这里,为了更好的理解,我们简单的画一张Kafka消费消息的原理图,如下所示。 在这张图中,一个主题可以配置几个分区,生产者发送的消息分发到不同的分区中,消费者接收数据的时候是按照消费者组来接收的,Kafka确保每个分区的消息只能被同一个消费者组中的同一个消费者消费,如果想要重复消费,那么需要其他的消费者组来消费。 Zookeerper中保存每个主题下的每个分区在每个消费者组中消费的offset。
如何理解 Kafka的分区逻辑?
答:引言 按照 Kafka 默认的消费逻辑设定,一个 分区 只能被同一个消费组(ConsumerGroup)内的一个 消费者 消费。 假设目前某消费组内只有一个 消费者 C0,订阅了一个topic,这个topic包含7个 分区 ,也就是说这个 消费者 C0订阅了7个 分区 ,参考下图(1)。