消息队列(MQ)简介与应用场景

一、官方描述:

MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法。

应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用连接来链接它们。

消息传递指的是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来通信,直接调用通常是用于诸如远程过程调用的技术。

排队指的是应用程序通过 队列来通信。队列的使用除去了接收和发送应用程序同时执行的要求。

二、通俗理解

MQ( Message Queue) ,即消息队列是在消息的传输过程中保存消息的容器。

通俗的说, 就是一个容器, 你把消息丢进去, 不需要立即处理。 然后有个程序去从你的容器里面把消息一条条读出来处理。

一般用于应用系统解耦、 消息异步分发, 能够提高系统吞吐量。

MQ的产品有很多, 有开源的, 也有闭源, 比如ZeroMQ、RabbitMQ、 ActiveMQ等。

三、应用场景

(PS:Broker-MQ服务端)

1、分布式事务

为面向服务架构提供分布式事务支持;

保证全局数据的一致性;


2、数据复制

利用MQ将数据从源头复制到多个目的地;

满足搜索、离线分析和分表规则变化等需求;


3、日志同步

应用通过可靠异步方式将日志同步到MQ;

可以对日志做实时或离线分析;


4、延迟队列

把MQ当做可靠的延迟队列;

分布式环境下的定时器;


5、广播通知

可靠的集群内广播通知;

用于通知Cache失效等事件;

猜你喜欢

转载自blog.csdn.net/lnc2003/article/details/78615379