系统部署架构如下图所示:
Name Server
Name Server是一个几乎无状态节点,一般集群部署(2个节点或以上),节点之间无同步信息。它主要提供broker注册、Topic路由管理等功能。
Broker
分布式消息中间件核心组件,提供消息生产、消费,主从同步、数据刷盘等核心功能。可以横向扩展、在线扩容以提高集群性能。每个Broker由一个Master节点(主节点)和一个Slaver节点(备节点)组成,与Name Server集群的所有节点建立长连接,并定时注册Topic等信息。
Producer
生产者,一般为应用调用API进行消息生产。Producer 与Name Server集群中的其中一个节点(随机选择)建立长连接,定期从Name Server取Topic路由信息,并向提供Topic服务的Master建立长连接,且定时向Master发送心跳。Producer 完全无状态,可集群部署。
Consumer
消费者,一般为应用调用API进行消息消费。Consumer与Producer一样,与一个Name Server建立长连接并取Topic路由信息。Consumer与提供Topic服务的Master建立长连接,进行消息消费。