Kafka在消费者组协调员和消费者组织领导者之间有什么区别?

Jef*_*man 15 apache-kafka kafka-consumer-api

我看到了对卡夫卡消费者组织协调员和消费者组织领导者的提及......

  1. 有什么不同?

  2. 将集团管理分为两组不同的责任有什么好处?

Yog*_*pta 36

消费者群体协调员是经纪人之一,而群组负责人是消费者群体中的消费者群体之一.

集团协调员只不过是从消费者群体的所有消费者那里接收心跳(或对消息进行民意调查)的经纪人之一.每个消费者群体都有一个小组协调员.如果消费者停止发送心跳,协调器将触发重新平衡.

当消费者想要加入消费者组时,它会向组协调者发送JoinGroup请求.加入该组织的第一个消费者成为组长.领导者从组协调器接收组中所有消费者的列表(这将包括最近发送心跳并因此被认为是活着的所有消费者),并且它负责为每个消费者分配分区的子集.它使用PartitionAssignor接口的实现来决定哪个分区应该由哪个消费者处理.在决定分区分配后,消费者领导者将分配列表发送给GroupCoordinator,后者将此信息发送给所有消费者.每个消费者只能看到自己的任务 - 领导者是唯一拥有该组中消费者的完整列表及其分配的客户流程.每次重新平衡发生时,此过程都会重复.

  • https://cwiki.apache.org/confluence/display/KAFKA/Kafka+Client-side+Assignment+Proposal 讨论了职责分离的动机。;tldr 灵活/可扩展的分配策略,无需重启代理 (4认同)
  • 此答案部分复制/粘贴自“ Kafka:权威指南”,该指南可在此处合法获得:https://www.confluent.io/wp-content/uploads/confluent-kafka-definitive-guide-complete.pdf (4认同)
  • 你可以扩展你的答案来解释我的问题的第2个问题吗?为什么不使用单一的组合协调员/领导者? (2认同)