Kafka副本模型简单解读

 

Kafka 引入逻辑 Topic, 将消息分主题管理

物理存储使用的partition, partition 目的是水平扩展,增加吞吐量,让不同的消息路由到不同的partition

partition为了高可用,又引入了副本机制,使用方可以指定副本数量partition leader负责接收生产者的消息生产

partition follower 从leader处拉取消息同步。

 

Kafka维护了一个动态的有效活跃副本集合ISR, 把跟不上leader节奏和心跳丢失的follower从集合中剔除掉,

当然这个集合是动态的,被剔除的follower如果可以赶上来,还阔以加回来。

 

partition最后的消息称为LogEndOffset

对于消费者而言,能够消费到的最低水位offset 称为 low watermark, 代表 AR 集合中最小的 logStartOffset

在 Kafka 的日志管理器中会有一个专门的日志删除任务来周期性地检测和删除不符合保留条件的日志分段文件, 所以 low watermark可能会增加,

消费不到的最高水位offset 称为 high watermark,consumer最多只能消费到HW所在的位置上一条信息。

 

 

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部