03 Broker主从架构和集群模式

1、图示

2、Broker 主从架构

1. 核心角色分工

  • Master 节点

    • 处理所有写操作(生产者消息写入)
    • 处理读请求(消费者消息拉取)
    • 负责向 Slave 节点同步数据
  • Slave 节点

    • 只读节点(消费请求分流)
    • 实时从 Master 同步消息数据
    • Master 宕机时可升级为 Master

2. 数据同步机制

同步模式 原理 特点 适用场景
异步复制 Master 写入即返回成功,后台同步到 Slave 低延迟、高吞吐 常规业务场景
同步双写 等待 Slave 写入成功后才返回响应 数据强一致、更高可靠性 金融/交易类场景
java 复制代码
// Broker 配置示例(broker.conf)
brokerRole=SYNC_MASTER  // 同步双写模式
# brokerRole=ASYNC_MASTER // 异步复制模式

3. 故障转移流程

  • 1.故障检测 :NameServer 通过心跳检测发现 Master 宕机(120秒超时)
  • 2.路由更新

    • NameServer 标记该 Broker 组不可写
    • 将 Slave 升级为可读节点
  • 3.消费者切换 :消费者自动重连到 Slave 继续消费