Kafka 的设计架构你知道吗?
2024-09-01 07:00:53
Producer :消息生产者,就是向 kafka broker 发消息的客户端。
Consumer :消息消费者,向 kafka broker 取消息的客户端。
Topic :可以理解为一个队列,一个 Topic 又分为一个或多个分区,
Consumer Group:这是 kafka 用来实现一个 topic 消息的广播(发给所有的 consumer)和单播(发给任意一个 consumer)的手段。一个 topic 可以有多个 Consumer Group。
Broker :一台 kafka 服务器就是一个 broker。一个集群由多个 broker 组成。一个 broker 可以容纳多个 topic。
Partition:为了实现扩展性,一个非常大的 topic 可以分布到多个 broker上,每个 partition 是一个有序的队列。partition 中的每条消息都会被分配一个有序的id(offset)。将消息发给 consumer,kafka 只保证按一个 partition 中的消息的顺序,不保证一个 topic 的整体(多个 partition 间)的顺序。
Offset:kafka 的存储文件都是按照 offset.kafka 来命名,用 offset 做名字的好处是方便查找。例如你想找位于 2049 的位置,只要找到 2048.kafka 的文件即可。当然 the first offset 就是 00000000000.kafka。
最新文章
- 扫二维码下载apk并统计被扫描次数(及微信屏蔽下载解决方案)
- 阿里云CentOS7系列一 -- 安装JDK7的方法.
- RequireJS使用注意地方
- userprofile同步用户失败的原因和解决方案
- asp.net webform 与mvc 共享session
- 【设计模式】单件模式(Singleton)--各类单件模式的比较
- 关于cookie
- RTSP
- DevExpress ChartControl 设置它的标题
- weblogic部署web项目出现错误
- Android项目——触摸按键控制LED
- linux mint 安装 opencv2.4
- python脚本后台启动
- 洛谷P2085最小函数值题解
- VirtualBox安装linux
- 扩展欧几里得,解线性同余方程 逆元 poj1845
- 065 xftp的使用
- 内部排序->;交换排序->;起泡排序
- 《mongoDB》查询
- 什么是pear的channel?