【kafka】-分区-消费端负载均衡

这篇具有很好参考价值的文章主要介绍了【kafka】-分区-消费端负载均衡。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一.为什么kafka要做分区?

因为当一台机器有可能扛不住(类比:就像redis集群中的redis-cluster一样,一个master抗不住写,那么就多个master去抗写),把一个队列的单一master变成多个master,即一台机器扛不住qps,那么我就用多台机器扛qps,把一个队列的流量均匀分散在多台机器上不就可以了么。

【kafka】-分区-消费端负载均衡

 二.消费端的负载均衡

2.1.我创建了名为的PartitionTopic的主题,在这个topic里面创建了3个分区,分别为Partition0、Partition1、Partition2,然后我在Partition0分区创建消息a,在Partition1分区创建消息b,在Partition2分区创建消息c

【kafka】-分区-消费端负载均衡

2.2.我启动第1个消费者,启动时让我输入消费者组名称,我输入“MyGroup“

我们看到给第1个消费者,分配了3个分区,分别是分区0、分区1、分区2。

【kafka】-分区-消费端负载均衡

2.2.我又启动第2个消费者,启动时让我输入消费者组名称,我同样输入“MyGroup“

我们看到给启动的第2个消费者,分配了1个分区,是分区2。

当我启动第2个消费者后,第1个消费者的分区进行了重新分配,重新分配后,分配了0分区、1分区。

【kafka】-分区-消费端负载均衡

【kafka】-分区-消费端负载均衡

2.3.我又启动第3个消费者,启动时让我输入消费者组名称,我同样输入“MyGroup“

 我们看到给启动的第3个消费者,分配了1个分区,是分区1。

 启动第3个消费者后,第1个消费者的分区又进行了重新分配,重新分配后,只剩下了0分区。

【kafka】-分区-消费端负载均衡

 2.4.我又启动第4个消费者,启动时让我输入消费者组名称,我同样输入“MyGroup“

启动第4个消费者后,组协调器没有给第4个消费者分配分区,也就是说第4个消费者无法消费。

【kafka】-分区-消费端负载均衡

  • 总结

如下几张图所示,当同一个消费者组的消费者数量大于分区数量,那么注定多出来的消费者无法消费(消费者只能消费组协调器分配给它的分区里的消息,如果连分区都不给你分配,你也注定无法消费)

如果要做消费端的负载均衡,则分区数量最好和同一个组的消费者数量一致分区数量=一个组内的消费者数量)

 文章来源地址https://www.toymoban.com/news/detail-425805.html

【kafka】-分区-消费端负载均衡

【kafka】-分区-消费端负载均衡

【kafka】-分区-消费端负载均衡

【kafka】-分区-消费端负载均衡

 

 

到了这里,关于【kafka】-分区-消费端负载均衡的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 为什么要做数据可视化系统

    数据可视化系统在当今数字时代发挥着重要的作用,成为许多组织和企业的不可或缺的工具。随着信息爆炸式增长和数据处理的需求不断增加,数据可视化系统帮助人们更好地理解和分析数据,为决策提供重要支持。数聚股份将详细介绍为什么要做数据可视化系统,并探讨其

    2024年02月13日
    浏览(42)
  • 为什么企业要做大规模敏捷?

    软件工程里一个重要的指标就是“可用的软件”,敏捷宣言里也同样告诉我们“工作的软件高于详尽的文档”,那“可用的软件”、“工作的软件”意味着什么呢?在我的理解里,可以经历用户 “千锤百炼”的软件就是一个“可用的软件”。曾经听到过这样的说法:“一个有

    2023年04月27日
    浏览(45)
  • 说说为什么要做数据库拆分

    单体项目在构建之初,数据库的负载和数据量都不大,所以不需要对数据库做拆分,小型财务系统、文书系统、ERP系统、OA系统,用一个MySQL数据库实例基本就够用了。 就像《淘宝技术这十年》里面说到的,电商业务的数据量增长飞快,所以最开始的PHP+MySQL的架构已经不能满

    2024年02月08日
    浏览(53)
  • 架构篇03-为什么要做架构设计?

    谈到架构设计,相信每个技术人员都是耳熟能详,但如果深入探讨一下,“为何要做架构设计?”或者“架构设计目的是什么?”类似的问题,大部分人可能从来没有思考过,或者即使有思考,也没有太明确可信的答案。 关于架构设计的目的,常见的误区有: 因为架构很重

    2024年01月21日
    浏览(66)
  • 为什么要做黑盒测试?黑盒测试有什么作用?

    对于软件测试的从业者来说,黑盒测试是十分重要的测试方式,它可以弥补白盒测试检查不到的部分。可能刚刚入门的测试小白,对于为什么要做黑盒测试?黑盒测试有什么作用?仍然抱有很大的疑问。下面小编就来从黑盒测试的概念、作用和优点,带领大家全面认识黑盒测

    2024年02月05日
    浏览(50)
  • 伙伴云CEO戴志康:我们为什么要做伙伴云?

    分享嘉宾: 戴志康,伙伴云CEO 以下为演讲实录⬇⬇⬇ 01选择人更少的一条路,从B级走向A级 我一直想和大家交流一个话题,关于我们为什么要做伙伴云。既代表我自己,同时也代表我们团队的一些想法。 我是一个怀疑论者。大多数人公认正确的事情,就一定是正确的吗?这

    2024年02月16日
    浏览(45)
  • python接口自动化(二)--什么是接口测试、为什么要做接口测试(详解)

    上一篇和大家一起科普扫盲接口后,知道什么是接口,接口类型等,对其有了大致了解之后,我们就回到主题-接口测试。 接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的

    2024年02月10日
    浏览(57)
  • 企业为什么要做自动化测试?我们该如何学习自动化测试?

    作为一名大厂测试开发,编写自动化脚本,俨然成为一种必备的技能。 为什么要做自动化测试? 那企业或者是我们测试人员为什么要做自动化测试呢? 如果在前两年,可能10个测试员有6个都是做的功能测试,但随着测试技术的发展以及测试工作的深入,传统的手工测试已经

    2024年02月10日
    浏览(53)
  • 分布式 - 消息队列Kafka:Kafka消费者分区再均衡(Rebalance)

    01. Kafka 消费者分区再均衡是什么? 消费者群组里的消费者共享主题分区的所有权。当一个新消费者加入群组时,它将开始读取一部分原本由其他消费者读取的消息。当一个消费者被关闭或发生崩溃时,它将离开群组,原本由它读取的分区将由群组里的其他消费者读取。 分区

    2024年02月12日
    浏览(40)
  • 【二、自动化测试】为什么要做自动化测试?哪种项目适合做自动化?

    自动化测试是一种软件测试方法,通过编写和使用自动化脚本和工具,以自动执行测试用例并生成结果。 自动化旨在替代手动测试过程,提高测试效率和准确性。 自动化测试可以覆盖多种测试类型,包括功能测试、性能测试、安全测试等,以确保软件系统在各个方面的质量

    2024年02月02日
    浏览(56)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包