RocketMq架构图
总览
Apache RocketMQ是一个分布式消息传递和流媒体平台,具有低延迟,高性能和可靠性,万亿级容量和灵活的可伸缩性。它由四个部分组成:NameServer Cluster、Broker Cluster、Producer Cluster、Consumer Cluster。它们中的每一个都可以水平扩展而没有单个故障点。如上面的屏幕截图所示。
NameServer Cluster
提供轻量级的服务发现和路由,每个Name Server记录了完整的路由信息,提供对应的读写服务,并支持高速存储扩展。
Broker Cluster
Brokers通过轻量级的Topic和Queue机制对message进行存储,提供了Push和Pull模型,包括容错机制(2-3个副本),具有高并发和在自然时间内百亿级message计算的能力。另外,Brokers提供灾难恢复、丰富的指标统计和警告机制,所有这些是传统的消息系统缺失的。
Producer Cluster
Producers支持分布式部署,Producers 通过多种负载均衡策略将消息发送至Broker,发送进程支持快速失败机制和低延时机制。
Consumer Cluster
Consumers支持Push和Pull两种分布式