RocketMQ 的核心 NameServer
点击蓝色“ 程序员大帝 ”关注我哟 加个“ 星标 ”,及时阅读最新技术文章 每日鸡汤,好喝 前言 本文属于《从零开始消息中间件》的系列文章,接着上篇文章 《 不要和陌生人说话,消息中间件之 Topic 》,今天来介绍一下 RocketMQ 的核心组件 NameServer。 这个东西很重要,它要管理集群里所有 Broker 的信息,让使用 MQ 的上下游系统可以通过它感知到集群的情况。 开始消息中间件学习的时候,最好有一个切入点,从而搞清楚它的架构设计细节,然后就可以申请一些机器开始落地部署了。 而 NameServer 非常适合我们入手, 因为没有 NameServer 一切都无从谈起,可以说这是 RocketMQ 运行的起点。 正文 01 什么是 NameServer? NameServer 也称之为路由中心,它的角色主要是为了感知集群里所有的节点与组件,然后配合生产者和消费者,使其能够和 MQ 系统进行通信。 针对目前流行的三种消息中间件 Kafka、 RabbitMQ 和 RocketMQ ,它们对路由中心的实现均有所不同。 Kafka 的路由中心实现相对复杂、混乱,它由 ZooKeeper 以及某个作为 Controller 的 Broker 共同完成的。 RabbitMQ 的 话 是 集 群 每个节点同时也会扮演了路由中心的角色。 而 RocketMQ