当前位置: 首页 > news >正文

Kafka 高可用机制:Broker集群、分区副本、Leader与ISR

Kafka 高可用不是简单地“多部署几台机器”。真正让 Kafka 在节点故障后继续服务的是 Broker 集群、Partition 副本、Leader/Follower 复制和 ISR 机制。

一句话概括:Kafka 一个集群由多个 Broker 组成,一个 Topic 拆成多个 Partition,每个 Partition 有多个副本,其中一个 Leader 对外读写,其余 Follower 复制数据;Leader 故障后优先从 ISR 中选出新的 Leader。

Kafka Cluster

Broker 1

Broker 2

Broker 3

P0 Leader

P0 Follower

P0 Follower

ISR

Broker 集群

Kafka 服务端由多个 Broker 进程组成。一个 Broker 挂了,其他 Broker 仍然可以对外提供服务。

Producer

Broker 1

Broker 2

Broker 3

Consumer

但 Broker 集群只是高可用基础。如果某个 Partition 只有一个副本,副本所在 Broker 挂了,这个分区仍然不可用。所以还需要分区副本机制。

分区副本机制

一个 Topic 可以有多个 Partition,每个 Partition 又可以有多个 Replica。

Topic: order-events

P0

P1

P2

P0 Leader on Broker1

P0 Follower on Broker2

P0 Follower on Broker3

每个分区副本中会选出一个 Leader,其他副本是 Follower。

角色作用
Leader对外处理生产和消费请求
Follower从 Leader 拉取数据,保持副本同步

正常情况下,生产者和消费者都和 Leader 交互,Follower 负责复制数据。

Leader 故障后怎么恢复

如果 Leader 所在 Broker 故障,Kafka 会从 Follower 中选出新的 Leader。

Kafka ControllerFollower 2Follower 1P0 LeaderKafka ControllerFollower 2Follower 1P0 LeaderLeader 故障检查是否在 ISR检查是否在 ISR选为新 Leader

这个过程保证了单个 Broker 故障时,分区仍然有机会继续对外服务。

ISR 是什么

ISR 是in-sync replicas,表示和 Leader 保持同步的副本集合。

课件里把副本分成两类:

类型含义
ISR 副本与 Leader 同步较及时,优先参与选主
普通副本落后较多,不能优先保证数据完整

Leader 故障时,Kafka 会优先从 ISR 中选出新的 Leader,因为 ISR 中的副本数据更接近 Leader。

没有

Leader 故障

ISR 中是否有可用副本

从 ISR 选新 Leader

只能从其他副本选或等待恢复

尽量保证数据不丢

可能牺牲一致性或可用性

高可用和可靠性参数的关系

Kafka 高可用和消息可靠性经常一起考。

机制或参数作用
多 Broker避免单点服务不可用
多 Partition提供并行能力,也便于分散到不同 Broker
多 Replica分区数据多副本保存
ISRLeader 故障时优先选同步副本
acks=all等 ISR 副本确认后再向生产者返回成功

如果只有副本但生产者使用acks=1,Leader 收到消息后就返回成功,随后 Leader 宕机且 Follower 还没同步完成,消息仍然可能丢。所以高可靠通常要把副本机制和acks=all放在一起说。

面试回答模板

可以这样答:

Kafka 高可用可以从集群和复制机制两个层面回答。集群层面,一个 Kafka 集群由多个 Broker 组成,某台 Broker 宕机后,其他 Broker 仍然可以对外服务。复制层面,一个 Topic 会拆成多个 Partition,每个 Partition 可以配置多个副本,其中一个是 Leader,负责读写请求,其他是 Follower,从 Leader 同步数据。Leader 所在 Broker 宕机后,Kafka 会优先从 ISR,也就是和 Leader 保持同步的副本集合中选出新的 Leader,从而保证容错和高可用。为了提高消息可靠性,生产者通常还会配置acks=all,让 ISR 副本都确认保存后再返回成功。

小结

Kafka 高可用的主线是:

多 Broker

多分区

多副本

Leader/Follower

ISR 优先选主

把 Broker、Partition、Replica、Leader、ISR 的关系讲清楚,高可用这题就不会散。

http://www.jsqmd.com/news/911568/

相关文章:

  • 保姆级教程:用HFSS 2023 R2设计24GHz微带雷达天线(从单元到阵列,附模型文件)
  • 2026论文降AIGC软件:11款工具实测谁在“智能”谁在“智障”?
  • Mac用户福音:在Parallels Desktop里跑VMware虚拟机,保姆级避坑指南(解决VT-x/Device Guard报错)
  • CTF和护网都搞不懂,还学什么网安?
  • 电商行业的 AI Agent Harness Engineering:从智能导购到库存管理
  • 终极Markdown浏览器扩展:3分钟让你的Chrome变身专业文档阅读器
  • SCMP考试难不难?2026年备考难度分析和通过策略 - 众智商学院职业教育
  • 避坑指南:IfcOpenShell处理IFC4与IFC2X3版本时,编译和代码兼容性要注意什么?
  • IEEE论文排版进阶:5个LaTeX‘黑魔法’让你的图表公式更专业
  • 教育博主深度调研:涵盖近年考点的临床执医技能题库怎么选? - 医考机构品牌测评专家
  • Windows下源码编译Open3D,我踩过的那些坑(附保姆级避坑指南)
  • 铁皮保温施工步骤及施工团队推荐 - 品牌推荐大师
  • 不止于串口扩展:深入挖掘CH9434在嵌入式Linux下的GPIO与RS485高级玩法
  • AI Agent的长期目标与任务分解:HuggingGPT项目架构深度解析
  • Vibe Coding 这个概念真的香吗?我试了一周后蚌埠住了
  • 2026 精选:上海高口碑小程序开发服务商汇总 | 精益求精 - 软件测评师
  • 告别CloudCompare?开源PCV点云软件深度评测:功能、性能与上手体验全解析
  • 告别环境配置烦恼:保姆级教程带你用Arduino IDE 2.x搞定ESP32开发环境(Windows版)
  • Kafka 数据存储与清理机制:Topic、Partition、Segment与日志删除
  • 2026宁夏小程序定制开发公司技术实力测评榜单
  • 上海经济纠纷执行律师事务所推荐榜:商事执行胜诉前十 - 品牌2026
  • CANFD报文发送总失败?可能是BRS和FDF这两个关键属性没搞懂(CANoe/CAPL实战)
  • 如何永久保存微信聊天记录?3步实现数据自由与智能分析
  • 2026年4月市场上评价高的伺服回收厂家口碑推荐,西门子PLC模块回收/FANUC伺服系统回收,伺服回收厂商推荐 - 品牌推荐师
  • ESP32人脸识别项目避坑指南:MTMN模型参数调优实战(附完整配置代码)
  • 上海执行案件哪个律师事务所专业?行业权威评级榜单发布 - 品牌2026
  • 太仓定制柜子工厂哪家好?2026年5月选择参考 - 小李说家居
  • 2026徐州黄金回收店哪家好?本地7家正规商家实测排名(附今日金价及避坑指南) - 宁波早知道
  • D2DX技术解析:如何让《暗黑破坏神2》在现代PC上重获新生
  • 6-8 封装检测当天是否可以签到(持久层)