1.partition中的每个message只能被组(Consumer group )中的一个consumer(consumer 线程)消费,如果一个message可以被多个consumer(consumer 线程)消费的话,那么这些consumer必须在不同的组。
2.每个消息分区 只能被同组的一个消费者进行消费。
同一个消费组里的不同consumer可以消费同一个topic里的不同partition
3.多个consumer的消费都必须是顺序读取partition里面的message,新启动的consumer默认从partition队列最头端最新的地方开始阻塞的读message。

注:图中边框加粗为各partition的leader

(1) broker的controller控制器节点  , 用来管理 leader副本和flowwer副本

(2)所有的读写都在leader副本上,leader副本可以在任何broker上(即leader不一定非得在controller上),follower副本也可以在任何broker上

建议对照上图,顺着一根根箭头线捋顺思维,kafka原理你就搞懂了,不需要再查阅其他资料了。

上图也是博主在结合自身经验和大量权威资料情况下,自己一点点画出来的,不想好东西被埋没,故分享出来。

原版图:超详细Kafka架构图-Java文档类资源-CSDN下载

参考:
1.kafka 实现原理分析,包括:名词解释,与zookeeper关系、controller选举、leader选举、消息日志文件,消息查询定位
https://blog.csdn.net/u013378306/article/details/106760236

2.史上最详细Kafka原理总结https://www.cnblogs.com/dreamroute/p/13092117.html

3.kafka架构分析与原理介绍(超详细,建议收藏!)https://www.modb.pro/db/152199

超详细Kafka架构原理图(观止)相关推荐

  1. 超详细 kafka 入门(最佳实践)

    今日推荐6年,终拿腾讯 offer! 都2021年了,你还在用Jenkins?赶快看看这些替代方案吧! 盘点 12 个 GitHub 上的高仿项目 CTO 说了,用错 @Autowired 和 @Re ...

  2. Kafka 设计架构原理详细解析(超详细图解)

    什么是Kafka? Apache Kafka是一个开放源代码的分布式事件流平台,成千上万的公司使用它来实现高性 能数据管道,流分析,数据集成和关键任务等相关的应用程序. Kafka的应用场景 构造实时 ...

  3. AD从原理图到PCB超详细教程

    AD超详细教程 前言 一.建立一个工程模板 二.原理图 1.设计原理图. 2.使用AD自带库和网上开源原理图库 3.画原理图库 4.编译原理图 三.PCB 1.确定元器件尺寸大小 2.绘制PCB Li ...

  4. 电子元器件搜索引擎 白嫖AD原理图符号、PCB封装和3D模型(超详细)

    电子元器件搜索引擎 白嫖AD原理图符号.PCB封装和3D模型(超详细) 前言 正文 前言 作为一个电气电子专业的学生我们做项目画PCB一般用的是AD,不过AD作为一个商用软件,穷学生只能用和谐学习版做 ...

  5. Kafka 入门教程(超详细)

    文章目录 1. Kafka 概述 1.1 定义 1.2 消息队列 1.2.1 传统消息队列的应用场景 1.2.2 消息队列的两种形式 1.3 Kafka 基础架构 2. Kafka 的安装 2.1 安 ...

  6. windows环境下安装RabbitMQ(超详细)

    windows环境下安装RabbitMQ(超详细) 记录RabbitMQ安装过程,欢迎大家和我交流.(安装过程中遇到的问题也有总结哈,请查看) RabbitMq简介 安装准备工具 安装步骤(图文) 安 ...

  7. 软件测试流程(萌新专属)【超详细】-酸奶公园

    软件测试流程(小白专属)[超详细]-酸奶公园 验证输入与输出的信息是否一致 输入框之前的标题是否正确 对Tab字符的处理机制 按下ctr |和alt键对输入框的影响 对于有约束条件要求的输入框应在条件 ...

  8. Redis超详细学习

    Redis超详细学习 一.Redis入门 Redis是什么? Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写.支持网络.可基于内 ...

  9. YOLO 超详细入门(含开源代码)——网络结构、细节、目标损失函数、优点

    文章目录 前言 背景 一.YOLO的核心原理预览 二.网络结构 为什么每个网格有固定的B个Bounding Boes?(即B=2) 三.网络细节 3.1 网络单元(grid) 3.1.1 作用 3.1 ...

最新文章

  1. Seeed Raspberry Pi广角摄像/相机模块 支持Pi所有版本 OV5647
  2. 如果传输的文件过大怎么办
  3. 周正宁:未来五年属于WebRTC+AV1
  4. C语言:L1-034 点赞 (20分)(解题报告)
  5. 微课|中学生可以这样学Python(例6.3):猜数游戏
  6. 二进制转换八进制图解_二进制如何转换成八进制?
  7. h3c交换机配置教程命令(新手配置交换机详细教程)
  8. 关闭WPS热点及广告推送
  9. python 下载m3u8视频_python 下载m3u8视频的示例代码
  10. ElasticSearch 可视化工具之cerebro
  11. 电子邮件地址怎么注册填写?手机怎么注册邮箱地址?
  12. 程易科技祝大家新年快乐
  13. 计算机应用基础评价手册怎么填,《评价手册》填写说明(必填)
  14. Qt/C++ 加载数据库出现qt_sql_default_connection提醒
  15. vue.js鼠标移入变换样式,鼠标移出去除样式(active)实现方法
  16. Blender 3D环境场景创建教程
  17. F#match的强大和List.tail方法的真实含义
  18. 计算机游戏13关gongl,密室逃脱17第13关怎么过 守护公寓第13关通关攻略
  19. java 爬取 flash 里面的数据
  20. 利用金箔形成的暗能量制造出的虫洞穿越空间的机器

热门文章

  1. vue-print-nb的使用与常见问题
  2. 对抗鲁棒异质图神经网络
  3. MAC地址的老化时间
  4. syscall指令_linux系统调用-SYSCALL_DEFINEx详解
  5. Java堆的管理--垃圾回收
  6. copy 和 mutableCopy的区别
  7. 精密划片机切割常见的崩边问题
  8. vr实时三维计算机图形技术的原理,vr虚拟现实技术原理有什么
  9. ForkLift 3—ftp与文件管理工具
  10. 随笔转载:母亲节快到了,写下对妈妈的祝福~