惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

V
V2EX
aimingoo的专栏
aimingoo的专栏
S
SegmentFault 最新的问题
博客园_首页
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
IT之家
IT之家
博客园 - 【当耐特】
月光博客
月光博客
C
Check Point Blog
T
The Blog of Author Tim Ferriss
罗磊的独立博客
博客园 - Franky
MongoDB | Blog
MongoDB | Blog
H
Help Net Security
Microsoft Security Blog
Microsoft Security Blog
B
Blog
阮一峰的网络日志
阮一峰的网络日志
腾讯CDC
美团技术团队
N
Netflix TechBlog - Medium
Stack Overflow Blog
Stack Overflow Blog
Y
Y Combinator Blog
L
LangChain Blog
The Cloudflare Blog

博客园 - 嘉禾世兴

AWS 笔记 OpenShift+ArgoCD+Azure Devops 量化交易 PyTorch 循环神经网络(RNN) PyTorch 卷积神经网络 PyTorch神经网络 PyTorch基础 Metplotlib库 集成学习算法 K 近邻算法 支持向量机算法 决策树算法 逻辑回归算法 线性回归算法 机器学习算法 机器学习 阿里云Clouder 使用MaxKB和Ollama搭建一个自己的AI大模型 Linux-Prometheus Linux-公有云架构
kafka
嘉禾世兴 · 2025-03-14 · via 博客园 - 嘉禾世兴

1)Producer:消息生产者,就是向 Kafka broker 发消息的客户端;

2)Consumer:消息消费者,向 Kafka broker 获取消息的客户端;

3)Topic:可以理解为一个队列;

4)Consumer Group(CG):这是 Kafka 用来实现一个 topic 消息的广播(发给所有的 consumer 和单播(发给任意一个 consumer)的手段。一个 topic 可以有多个 CG。Topic 的消息会复制(不是真的复制,是概念上的)到所有的 CG,但每个 partition 只会把消息发给该 CG 中的一个 consumer。如果需要实现广播,只要每个 consumer 有一个独立的 CG 就可以了。

要实现单播只要所有的 consumer 在同一个 CG。用 CG 还可以将 consumer 进行自由的分组而不需要多次发送消息到不同的 topic;

5)Broker:一台 Kafka 服务器就是一个 broker。一个集群由多个 broker 组成。一个 broker 可以容纳多个 topic;

6)Partition:为了实现扩展性,一个非常大的 topic 可以分布到多个 broker (即服务器)上,一个 topic 可以分为多个 partition,每个 partition 是一个有序的队列。Partition 中的每条消都会被分配一个有序的 id ( offset)。Kafka 只保证按一个 partition 中的顺序将消息发给 consumer,不保证一个 topic 的整体(多个 partition 间)的顺序;

7)Offset:Kafka 的存储文件都是按照 offset.kafka 来命名,用 offset 做名字的好处是方便查找。例如你想找位于2049的位置,只要找到2048.kafka 的文件即可。当然 the first offset 就是00000000000.kafka。