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

news2024/11/14 15:37:54

一.为什么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个消费者无法消费。

  • 总结

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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/902231.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

学习嵌入式

最近,打算了解一些关于嵌入式的知识。这里先了解嵌入式到底是什么。

[ MySQL ] — 常见函数的使用

目录 日期函数 current_date — 获取当前日期 current_time — 获取当前时间 current_timestamp — 获取当前时间戳 date — 获取参数的日期部分 ​编辑 date_add — 在日期或时间的基础上进行增加 date_sub — 在日期或时间的基础上进行减少 datediff — 计算两个日期相差…

快速上手Linux核心命令:Linux系统信息相关命令

前言 这期呢主要说一说Linux中与系统相关的命令,一共包含10个命令 uname 显示系统信息 1、简介 uname命令用于显示系统相关信息,比如内核版本号、硬件架构等 2、语法格式 uname [参数选项] 3、参数说明 参数参数说明-a显示系统所有相关信息-m显示计算…

通过重构来加深理解——DDD

要想成功地开发出实用的模型,需要注意以下三点: (1)复杂巧妙的领域模型是可以实现的,也是值得我们去花费力气实现的。 (2)这样的模型离开不断的重构是很难开发出来的,重构需要领域专…

2. Linux Server 20.04 Qt5.14.2配置Jetson Orin Nano Developer Kit 交叉编译环境

最近公司给了我一块Jetson Orin Nano的板子,先刷了系统(1.Jetson Orin Nano Developer Kit系统刷机)又让我搭建交叉编译环境,所以有了下面的文章 一 :Qt5.14.2交叉编译环境安装 1.准备 1.1设备环境 1.1.1 Server: Ubuntu20.0…

md文本学习

这里写自定义目录标题 欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants 创建一个自定义列表如何创建一个…

腾讯云轻量应用服务器配置_网站上线全流程

腾讯云轻量应用服务器CPU内存带宽配置高,成本很低,腾讯云百科来详细说下腾讯云服务器从购买、配置到网站上线全流程,包括轻量服务器配置选择、应用镜像选择、重置密码、防火墙开放端口教程等详细教程: 目录 一:注册腾…

年薪100w的项目组合和项目集经理与项目经理的区别

项目经理未来的发展是什么?很多人经常问,专业的路可以是项目集,项目组合经理,也可以是PMO等等。为什么项目集经理,项目组合经理就挣得比较多呢?今天为大家一一揭秘! 项目经理、项目集经理和项目…

【2023年11月第四版教材】《第5章-信息系统工程(合集篇)》

《第5章-信息系统工程(合集篇)》 章节说明1 软件工程1.1 架构设计1.2 需求分析1.3 软件设计1.4 软件实现[补充第三版教材内容] 1.5 部署交付 2 数据工程2.1 数据建模2.2 数据标准化2.3 数据运维2.4 数据开发利用2.5 数据库安全 3 …

攻防世界-backup

原题 解题思路 备份文件后缀大多是bak、git、svn、swp等,尝试index.php.bak就有文件下载了:

文件型数据库Derby操作示例

1.下载db-derby-10.14.2.0-bin.zip 2.启动数据库,两种方式 1) 可执行程序 Windows可以运行ij.bat, Linux可以运行ij Ij.bat, ij在bin目录里 2)通过执行jar包形式启动 Derbyrun.jar在lib目录里 执行Java -jar derbyrun.jar ij 启动 2. 连接数据库 …

除了提升编码能力,养成这4个工作习惯,让你成为更优秀的前端开发者

如果你想成为一名优秀的前端开发者,你需要拥有不仅仅是技术知识。如今,由于谷歌和其他资源的存在,获取技术知识比以前更容易了。而真正能够产生差异的是习惯。就像心理强度对于个人成长很重要一样,有些习惯可以让你成为一个更有效…

七夕最强Python表白代码来了

点击上方Python小二,选择星标公众号 干货速达,不迷路 快到七夕了,大家都懂,这里不过多解释了,送大家几段节日专属Python代码。 玫瑰 毫无疑问,玫瑰一直都是七夕、520......这类节日的专属,带文字…

最长公共子序列——力扣1143

解法:动态规划 int longestCommonSubsequence(string text1, string text2){int m=text1.size(), n=text2.size

高等数学上册 第九章 多元函数微分法及其应用 知识点总结

多元函数微分法及其应用 ( 1 )多元函数的极限: 用“ ε − δ ”语言描述,二元函数的极限叫二重极限 二重极限存在: { 1 、 P ( x , y ) 一定要以任何方式趋于 ( x 0 , y 0 ) 时, f ( x , y ) 无限趋近于 A…

flutter:webview_flutter和flutter_inappwebview的简单使用

前言 最近在研究如何在应用程序中嵌入Web视图,发现有两个库不错。 一个是官方维护、一个是第三方维护。因为没说特别的需求,就使用了官方库,实现一些简单功能是完全ok的 webview_flutter 不建议使用,因为效果不怎么样&#xf…

wps设置其中几页为横版

问题:写文档的时候,有些表格列数太多,纵向显示内容不完整,可以给它改成横向显示。 将鼠标放在表格上一页的底部,点击‘插入-分页-下一页分节符’。 将鼠标放在表格页面的底部,点击‘插入-分页-下一页分节符…

qt显示图片并转换成灰度图及伪彩图

写了个程序,可在途图片,并切换成灰度图及伪彩图显示,主要代码如下: #include "mainwindow.h" #include "ui_mainwindow.h"MainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::MainW…

Java日常的String、Date、计算问题

一、String相关类 三者执行速度:StringBuilder > StringBuffer > String 1.1、String 每次对 String 类型改变的时,都会生成一个新的 String 对象,指针指向新的 String 对象。 适用于字符串不常变的,少量的数据场景中&am…

每日一题 143重排链表

题目 给定一个单链表 L 的头节点 head ,单链表 L 表示为: L0 → L1 → … → Ln - 1 → Ln请将其重新排列后变为: L0 → Ln → L1 → Ln - 1 → L2 → Ln - 2 → … 不能只是单纯的改变节点内部的值,而是需要实际的进行节点交…