🥩 Kafka
2022年10月10日
- 中间件
🥩 Kafka
1. 组成
1) Producer
- 生产者
2) Consumer
- 消费者
3) Broker
- 消息中间件处理节点,一个 Kafka 节点就是一个 Broker 实例
Controller
- Kafka 集群中,有一个
Broker
会被选举为Controller
- 负责管理整个集群中所有 分区 | 副本 的状态
4) Topic
- 每条消息都有主题
Partition
- 一个 Topic 下的消息,可放在多个 partition 中
- 每个 partition 中的内部消息有序
partition
分布在不同 broker 中
Leader
- 每个
partition
有多个副本,其中有且仅有一个 Leader - Leader 是负责 读写 的 partition
Follower
- Follower 跟随 Leader,所有写请求都经过 Leader,数据变更会广播给所有 Follower
- 若 Leader 挂掉,会从 Follower 中选举出新的 Leader
- 若 Follower 挂掉或与 Leader 同步数据差很多,Leader 会将该 Follower 从列表中删除,然后重新创建一个 Follower
Offset
- 消息偏移量