一.为什么kafka要做分区?
(资料图)
因为当一台机器有可能扛不住(类比:就像redis集群中的redis-cluster一样,一个master抗不住写,那么就多个master去抗写),把一个队列的单一master变成多个master,即一台机器扛不住qps,那么我就用多台机器扛qps,把一个队列的流量均匀分散在多台机器上不就可以了么。
二.消费端的负载均衡
2.1.我创建了名为的PartitionTopic的主题,在这个topic里面创建了3个分区,分别为Partition0、Partition1、Partition2,然后我在Partition0分区创建消息a,在Partition1分区创建消息b,在Partition2分区创建消息c
2.2.我启动第1个消费者,启动时让我输入消费者组名称,我输入“MyGroup“
我们看到给第1个消费者,分配了3个分区,分别是分区0、分区1、分区2。
2.2.我又启动第2个消费者,启动时让我输入消费者组名称,我同样输入“MyGroup“
我们看到给启动的第2个消费者,分配了1个分区,是分区2。
当我启动第2个消费者后,第1个消费者的分区进行了重新分配,重新分配后,分配了0分区、1分区。
2.3.我又启动第3个消费者,启动时让我输入消费者组名称,我同样输入“MyGroup“
我们看到给启动的第3个消费者,分配了1个分区,是分区1。
启动第3个消费者后,第1个消费者的分区又进行了重新分配,重新分配后,只剩下了0分区。
2.4.我又启动第4个消费者,启动时让我输入消费者组名称,我同样输入“MyGroup“
启动第4个消费者后,组协调器没有给第4个消费者分配分区,也就是说第4个消费者无法消费。
总结如下几张图所示,当同一个消费者组的消费者数量大于分区数量,那么注定多出来的消费者无法消费(消费者只能消费组协调器分配给它的分区里的消息,如果连分区都不给你分配,你也注定无法消费)
如果要做消费端的负载均衡,则分区数量最好和同一个组的消费者数量一致(分区数量=一个组内的消费者数量)关键词:
【kafka】-分区-消费端负载均衡 全球即时
2023-04-264月26日早盘快讯
2023-04-26被保人投保人受益人三者区别是什么?之间有什么关系? 天天快报
2023-04-26全球快看:从“企业找政策”到“政策找企业”
2023-04-26前沿资讯!服务春耕生产 提升农业质效(经济聚焦)
2023-04-26天天观点:跨学科项目学习带动教与学的变革
2023-04-26欲念三部曲之黄昏(关于欲念三部曲之黄昏介绍)
2023-04-26假顺风、真营运:“全职”顺风车,安全隐患多 当前简讯
2023-04-26“五一”出行如何防范旅游陷阱
2023-04-26邮政储蓄基金定投怎么赎回_邮政储蓄基金定投
2023-04-26【kafka】-分区-消费端负载均衡 全球即时
2023-04-264月26日早盘快讯
2023-04-26被保人投保人受益人三者区别是什么?之间有什么关系? 天天快报
2023-04-26全球快看:从“企业找政策”到“政策找企业”
2023-04-26前沿资讯!服务春耕生产 提升农业质效(经济聚焦)
2023-04-26天天观点:跨学科项目学习带动教与学的变革
2023-04-26欲念三部曲之黄昏(关于欲念三部曲之黄昏介绍)
2023-04-26假顺风、真营运:“全职”顺风车,安全隐患多 当前简讯
2023-04-26“五一”出行如何防范旅游陷阱
2023-04-26邮政储蓄基金定投怎么赎回_邮政储蓄基金定投
2023-04-26Copyright 2015-2022 青年超市网版权所有 备案号:皖ICP备2022009963号-20 联系邮箱:39 60 291 42@qq.com