Kafka 消费者
消费方式
工作流程
总体流程
消费者组流程
消费者组:由多个 consumer (允许1个)组成,其条件是所有消费者的 groupid 相同,因为默认情况下定义消费者时都需要输入 groupid,即便不输入 kafka 内部也会分配一个 groupid
- 消费者组内的每个消费者负责消费不同分区的数据,一个分区只能由一个组内的一个消费者消费
- 消费者之间互不影响。所有的消费者都属于某个消费者组,即消费者组是逻辑上的一个订阅者
- 如果消费者组中有更多的消费者,超过了主题分区的数量,那么多出来的一部分消费者就会闲置,不会接收任何消息
初始化流程
corrdinator:辅助实现消费者组的初始化和分区的分配
选择方式为:groupid 的 hashcode 值 % 50 (__consumer_offsets 的分区数量,默认是 50)
工作流程
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!