详解Kafka的LEO和HW机制

[复制链接]
发表于 2025-10-31 22:23:53 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
Kafka 的 LEO 和 HW 机制详解

1. LEO(Log End Offset)

LEO 是 Kafka 中非常紧张的一个概念,表现日志日志文件中末了一个消息的偏移量位置。它是分区日志日志的末端位置,新消息会从这个位置开始写入。

      
  • Leader 副本的 LEO:表现 Leader 副本中已写入消息的末了一个偏移量。
      
  • Follower 副本的 LEO:表现 Follower 副本中已乐成同步的消息的末了一个偏移量。

2. HW(High Watermark)

HW 是 Kafka 中的高水位线,用于标志分区中已完全提交的消息的最大偏移量。只有偏移量小于 HW 的消息才被以为是已提交的,可以被斲丧者安全斲丧。

      
  • Leader 副本的 HW:Leader 副本的 HW 是 ISR(In-Sync Replicas)中全部副本的最小 LEO。Leader 副本会根据 Follower 副本的同步情况动态更新 HW。
      
  • Follower 副本的 HW:Follower 副本的 HW 是从 Leader 副本同步过来的,表现 Follower 副本已确认的最小 LEO。

3. LEO 和 HW 的更新机制


      
  • Leader 副本的 LEO 更新:
         
    • 当生产者向 Leader 副本发送消息时,Leader 副本会将消息写入本地日志日志,并更新自身的 LEO。
         
    • Leader 副本会将消息复制到全部 Follower 副本,并等候 Follower 副本简直认。
         
      
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表