开发者学堂课程【RocketMQ知识精讲与项目实战(第一阶段):双主双从(2m-2s)集群介绍和工作流程说明】学习笔记,与课程紧密联系,让用户快速学习知识
课程地址:https://developer.aliyun.com/learning/course/702/detail/12368
双主双从(2m-2s)集群介绍和工作流程说明
内容介绍:
一、总体架构
二、集群工作流程
一、总体架构
消息高可用采用2m-2s(同步双写)方式
二、集群工作流程
(1) 启动NameServer
启动 NameServer,NameServer 起来后监听端口,等待 Broker、
ProducerConsumer 连上来,相当于一个路由控制中心。
(2) Broker启动
Broker 启动,跟所有的 NameServer 保持长连接,定时发送心跳包。心跳包中包含当前 Broker 信息(IP+端口等)以及存储所有Topic
信息。注册成功后,NameServer 集群中就有 Topi c跟 Broker 的映射关系。
(3) 创建Topic
收发消息前,先创建 Topic,创建 Topic 时需要指定该 Topic 要存储在哪些Broker上,也可以在发送消息时自动创建 Topic。
(4) Producer发送消息
Producer 发送消息,启动时先跟 NameServer集群中的其中一台建立长连接,并从
NameServer中获取当前发送的 Topic 存在哪些
Broker上,轮询从队列列表中选择一个队列,然后与队列所在的 Broker 建立长连接从而向 Broker 发消息。
(5) Consumer获取当Topic位置
Consumer 跟 Producer 类似,跟其中一台 NameServer 建立长连接,获取当前订
阅 Topic 存在哪些 Broker上,然后直接跟Broker建立连接通道,开始消费消息。