概念模型

image.png

部署架构

image.png

网络部署特点


  1. Name Server 是一个几乎无状态节点,可集群部署,节点之间无任何信息同步。
  2. Broker 部署相对复杂,Broker 分为 Master 与 Slave,一个 Master 可以对应多个 Slave,但是一个 Slave 只能 对应一个 Master,Master 与 Slave 的对应关系通过指定相同的 BrokerName,不同的 BrokerId 来定义,BrokerId 为 0 表示 Master,非 0 表示 Slave。Master 也可以部署多个。每个 Broker 与 Name Server 集群中的所有节点建立长连接,定时注册 Topic 信息到所有 Name Server。

  3. Producer 与 Name Server 集群中的其中一个节点(随机选择)建立长连接,定期从 Name Server 取 Topic 路 由信息,并向提供 Topic 服务的 Master 建立长连接,且定时向 Master 发送心跳。Producer 完全无状态,可 集群部署。

  4. Consumer 与 Name Server 集群中的其中一个节点(随机选择)建立长连接,定期从 Name Server 取 Topic 路由信息,并向提供 Topic 服务的 Master、Slave 建立长连接,且定时向 Master、Slave 发送心跳。Consumer 既可以从 Master 订阅消息,也可以从 Slave 订阅消息,订阅规则由 Broker 配置决定。

文档说明

消息中间件rocketmq原理解析.pdf
RocketMQ_原理简介.pdf

环境搭建

https://github.com/apache/rocketmq-externals/tree/master/rocketmq-console
https://blog.csdn.net/lumengmeng_csdn/article/details/87855335

  1. <br />