栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

消费组与分区重平衡

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

消费组与分区重平衡

当有新的消费者加入到消费者组时,原本的分区就需要重新分配;比如一个topic有30个分区,原本只有两个消费者,每人负责15个分区,当新加入一个消费者时,并没有分区可以给他消费,只能是将30个分区重新分配。

每个消费者组都会有一个broker负责协调(称为group coordinator),各个消费者通过发送心跳的方式向组协调者同步状态,当有消费者一定时间没有给组协调者发送心跳或者有新的消费者加入到消费者组时,就会触发消费组的重平衡操作。

新加入消费者触发重平衡:1.新加入消费者向组协调者发送joinGroup请求,携带订阅的topic信息2.此后组协调者收到组内其他消费者的心跳请求时,在响应中告诉消费者要重平衡3.组内原有消费者会重新发送joinGroup请求到组协调者4.组协调者根据发送joinGroup请求的先后选出消费者leader,将topic和分区信息响应给各个消费者5.被选为leader的消费者将分区分配好6.各消费者发送SyncGroup请求给组协调者请求新分配好的分区信息,其中消费者leader会携带分配好的分区信息7.组协调者将各个消费者负责的分区信息响应给消费者,重平衡完成消费者主动离开导致重平衡1.消费者发送leaveGroup请求给组协调者2.此后组协调者收到组内其他消费者的心跳请求时,在响应中告诉消费者要重平衡3.消费者会重新发送joinGroup请求到组协调者4.组协调者根据发送joinGroup请求的先后选出消费者leader,将topic和分区信息响应给各个消费者5.被选为leader的消费者将分区分配好6.各消费者发送SyncGroup请求给组协调者请求新分配好的分区信息,其中消费者leader会携带分配好的分区信息7.组协调者将各个消费者负责的分区信息响应给消费者,重平衡完成消费者失去心跳导致重平衡1.消费者一定时间内没有发送心跳信息给组协调者2.此后组协调者收到组内其他消费者的心跳请求时,在响应中告诉消费者要重平衡3.消费者会重新发送joinGroup请求到组协调者4.组协调者根据发送joinGroup请求的先后选出消费者leader,将topic和分区信息响应给各个消费者5.被选为leader的消费者将分区分配好6.各消费者发送SyncGroup请求给组协调者请求新分配好的分区信息,其中消费者leader会携带分配好的分区信息7.组协调者将各个消费者负责的分区信息响应给消费者,重平衡完成

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/365875.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号