LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

RocketMQ最全详解(图文全面总结)

admin
2025年6月28日 21:45 本文热度 28

消息中间件是亿级互联网架构的基石,其中最典型有“RocketMQ”消息中间件,大厂最爱考察的内容,下面我就全面来详解


RocketMQ

RocketMQ是一款开源的分布式消息中间件,具有高吞吐量、低延迟和高可靠性的特点。

主要解决,如下4大场景:

1、应用解耦

通过消息队列将生产者、和消费者解耦,比如:电商平台中,用户下单后,物流服务...等,可以通过消息队列解耦,彼此独立处理自己的业务逻辑。

2、异步通信

在系统间传递消息时,生产者发送消息后,不需要立即等待消费者处理完毕,而是可以继续执行其他操作,这样可以提高系统的响应速度、和吞吐量。

3、削峰填谷

最典型的就是:阿里双11,秒杀活动中,用户的抢购请求通过消息队列暂存,这就是典型的“削峰填谷”,避免因为瞬时高并发导致数据库压力过大。

4、消息广播

支持消息的多播,便于实现通知、和广播功能,比如:系统监控报警,当发现系统异常时,报警消息通过消息队列广播多个。


RocketMQ原理



RocketMQ架构

RocketMQ架构,如下图所示:

RocketMQ架构:主要由NameServer、Broker、Producer以及Consumer四部分构成。

1.NameServer

提供命名服务,负责管理Topic和Broker的元数据信息。

要包括两个功能,如下图所示:

1)Broker管理

  • NameServer接受Broker集群的注册信息,并且保存下来作为路由信息的基本数据;

  • 然后提供心跳检测机制,检查Broker是否还存活;

2)路由信息管理

每个NameServer将保存关于Broker集群的整个路由信息,Producer和Conumser通过NameServer,就可以知道整个Broker集群的路由信息,从而进行消息的投递和消费。

2.Broker

消息中间件的服务器,负责存储和传递消息。

如下图所示:

Broker的核心功能包含:

  1. 接收 Producer 发过来的消息;

  2. 处理 Consumer 的消费消息请求;

  3. 消息的持 久化存储;

  4. 消息的 HA 机制;

  5. 服务端过滤功能等 。

3.Producer

消息的生产者,负责发送消息到Broker。

生产者发送消息时,先与Namesrv交互获取Broker信息,然后与Broker建立连接发送消息。

如下图所示:

  • Producer创建消息时,需要指定消息的主题(Topic)、标签(Tag)和消息体(Body)等内容。

  • 主题用于对消息进行分类和归类,标签用于对消息进行更细粒度的过滤和筛选。

  • 消息体是实际的业务数据。

4.Consumer

消息的消费者,负责从Broker订阅并消费消息。

如下图所示:

消费者通过与Namesrv交互获取Broker信息,并根据主题和队列进行消息订阅。

消费者从Broker拉取消息进行消费,可以设置消费模式(顺序消费或并发消费)和消费进度。

5.消息存储

RocketMQ采用顺序写磁盘的方式持久化消息,以保证高吞吐量和消息的持久性。

消息存储在CommitLog文件中,其中包含了消息的主题、标签、属性等信息。

消息索引存储在Index文件中,用于快速查找消息。

6.消息的顺序性保证

RocketMQ支持顺序消费,在同一个队列上的消息按照发送顺序被消费。

对于全局有序的场景,可以将消息发送到同一个队列中。

对于局部有序的场景,可以将消息发送到多个队列中,并在消费端根据消息的某个关键属性进行排序。

7.高可用和容错性

RocketMQ通过主从复制机制实现高可用性和容错性。

Broker集群中的每个主节点都有相应的备份节点,当主节点出现故障时,备份节点可以接管服务。

Namesrv也可以配置为集群模式,提供高可用性和容错性。

8.消息的事务性

RocketMQ支持消息的事务性,允许生产者发送带有事务标记的消息。

生产者发送事务消息时,会先执行本地事务,然后根据事务结果提交或回滚消息。

事务消息的状态和进度由Broker和生产者共同管理和维护。


阅读原文:原文链接


该文章在 2025/7/2 0:15:44 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2025 ClickSun All Rights Reserved