【RocketMQ】--架构模型及流程

架构模型

流程

1、启动 NameServer,NameServer启起来后监听端口,等待 Broker、Producer、Consumer 连上来,相当于一个路由控制中心。 2、启动Broker,跟所有的NameServer保持长连接,定时发送心跳包。 心跳包中,包含当前 Broker 信息(IP+端口等)以及存储所有 Topic 信息。 注册成功后,NameServer集群中就有 Topic 跟 Broker 的映射关系。 3、收发消息前,先创建 Topic 。创建 Topic 时,需要指定该 Topic 要存储在哪些 Broker上。也可以在发送消息时自动创建Topic。 4、Producer 发送消息。 启动时,先跟 NameServer集群中的其中一台建立长连接,并从NameServer中获取当前发送的 Topic 存在哪些 Broker 上,然后跟对应的 Broker 建立长连接,直接向 Broker 发消息。 5、Consumer 消费消息。 Consumer 跟 Producer 类似。跟其中一台 NameServer建立长连接,获取当前订阅 Topic 存在哪些 Broker 上,然后直接跟 Broker 建立连接通道,开始消费消息。

经验分享 程序员 微信小程序 职场和发展