Kafka学习笔记<基本概念>

基本概念

  1. Leader 副本:所有的读写请求都由leader副本处理
  2. Follower副本:follower副本仅仅是从Leader副本处把数据拉取到本地之后,同步更新到自己的Log日志中。
  3. Topic&分区:Topic是用于存储消息的逻辑概念。每个Topic可以划分成多个分区(每个Topic都至少有一个分区),同一Topic下的不同分区包含的消息是不同的。
  4. ISR(In-Sync Replica)集合:表示的是目前可用且消息量与Leader相差不多的副本集合。
    ISR集合中的副本必须满足下面两个条件:
    (1):副本所在节点必须维持着与zookeeper的连接。
    (2):副本最后一条消息的offset与Leader副本的最后一条消息的offset之间的差值不能超过指定的阀值。
    (3):当Follower副本追上(即最后一条消息的offset的差值小于指定阀值)Leader副本的时候,此Follower副本会被Leader副本重新加入到ISR中。

  5. HW(High Watermark) 与ISR集合紧密相关。HW标记了一个特殊的offset,当消费者处理消息的时候,只能拉取到HW之前的消息,HW之后的消息对消费者来说是不可见的。与ISR集合类似,HW也是由Leader副本管理的。当ISR集合中全部的Follower副本都拉取HW指定消息进行同步后,Leader副本会递增HW的值。

  6. LEO(Log End Offset)是所有的副本都会有的一个offset标记,它指向追加到当前副本的最后一个消息的offset。当生产者向Leader副本追加消息的时候,Leader副本的LEO标记会递增;当Follower副本成功从Leader副本拉取消息并更新到本地的时候,Follower副本的LEO就会增加。

     1.Poducer向此Partition推送消息
     2.Leader副本将消息追加到Log中,并递增其LEO
     3.Follower副本从Leader副本拉取消息并进行同步
     4.Follower副本将拉取到的消息更新到本地Log中,并递增其LEO
     5.当ISR集合中所有副本都完成了对offset消息的同步,Leader副本会递增HW
    

    参考:《Apache Kafka 源码剖析》

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值