说一下 RocketMQ 的整体工作流程?
简单来说,RocketMQ 是一个分布式消息队列,也就是消息队列
+分布式系统
。
作为消息队列,它是发
-存
-收
的一个模型,对应的就是 Producer、Broker、Cosumer;作为分布式系统,它要有服务端、客户端、注册中心,对应的就是 Broker、Producer/Consumer、NameServer
所以我们看一下它主要的工作流程:RocketMQ 由 NameServer 注册中心集群、Producer 生产者集群、Consumer 消费者集群和若干 Broker(RocketMQ 进程)组成:
- Broker 在启动的时候去向所有的 NameServer 注册,并保持长连接,每 30s 发送一次心跳
- Producer 在发送消息的时候从 NameServer 获取 Broker 服务器地址,根据负载均衡算法选择一台服务器来发送消息
- Conusmer 消费消息的时候同样从 NameServer 获取 Broker 地址,然后主动拉取消息来消费

THE END
暂无评论内容