Python知识分享网 - 专业的Python学习网站 学Python,上Python222
RocketMQ详细介绍及核心问题解释(很全) PDF 下载
发布于:2024-02-14 10:57:20
(假如点击没反应,多刷新两次就OK!)

RocketMQ详细介绍及核心问题解释(很全) PDF 下载  图1

 

 

资料内容:

 

1. RocketMq是什么
 

一个纯Java、分布式队列模型的消息中间件,具有高可用、高可靠、高实时、低延迟的特点。(记住这句就
行了)

 

2. RocketMq有什么功能


1、业务解耦:这也是发布订阅的消息模型。生产者发送指令到MQ中,然后下游订阅这类指令的 消费者会收
到这个指令执行相应的逻辑,整个过程与具体业务无关,抽象成了一个发送指令,存储指令,消费指令的过
程。
2、前端削峰:前端发起的请求在短时间内太多后端无法处理,可以堆积在MQ中,后端按照一定的顺序处
理,秒杀系统就是这么实现的。
3、亿级消息的堆积能力,单个队列中的百万级消息的累积容量。
4、高可用性:Broker服务器支持多Master多Slave的同步双写以及Master多Slave的异步复制模式,其中同
步双写可保证消息不丢失。
5、高可靠性:生产者将消息发送到Broker端有三种方式,同步、异步和单向,其中同步和异步都可以保证
消息成功的成功发送。Broker在对于消息刷盘有两种策略:同步刷盘和异步刷盘,其中同步刷盘可以保证消
息成功的存储到磁盘中。消费者的消费模式也有集群消费和广播消费两种,默认集群消费,如果集群模式中
消费者挂了,一个组里的其他消费者会接替其消费。综上所述,是高可靠的。
6、支持分布式事务消息:这里是采用半消息确认和消息回查机制来保证分布式事务消息的,下面会详细描
述。
7、支持消息过滤:建议采用消费者业务端的tag过滤。
8、支持顺序消息:消息在Broker中是采用队列的FIFO模式存储的,也就是发送是顺序的,只要保证消费的
顺序性即可。
9、支持定时消息和延迟消息:Broker中由定时消息的机制,消息发送到Broker中,不会立即被Consumer
消费,会等到一定的时间才被消费。延迟消息也是一样,延迟一定时间之后才会被Consumer消费。

 

3. RocketMq的架构

 

RocketMq一共有四个部分组成:NameServer,Broker,Producer生产者,Consumer消费者,每一部分
都是集群部署的。