什么是消息队列MQ?

目录

什么是MQ

异步通信与同步通信

消息队列的好处

消息队列的两种模式


 

什么是MQ

 

MQ即消息队列。消息队列的含义是生产者与消费者通信时,把要传输的数据放到队列中。

利用消息队列的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成。

它被广泛应用在异步通信的领域中

 

 

异步通信与同步通信

 

我们知道消息队列是异步的,那异步和同步有什么区别呢? 

同步消息,A从填写信息到发送信息走了N个步骤, 只有当发送信息成功时,页面才会响应注册成功。如果此时有100个消息都卡在后台业务逻辑代码排队处理,此时,只有等前100个消息都处理完,才会处理第101个,第101个处理完才会返回给当前用户注册成功的提示。

异步消息,A把信息发送到消息队列后,即会返回给当前用户注册成功,此时,后台处理发送短信的业务逻辑,而已经收到成功通知的A用户可以把精力转移到另外的事情上去了。

 

 

 消息队列的好处

 

异步

很多消息没有必要等到完全处理好之后再返回相应信息,异步可以更好的解放生产者。

解耦

允许你独立的扩展或修改两端的处理过程,只要确保它们遵守同样的接口约束,要通信的数据交给消息队列来处理

缓存

有助于控制和优化数据流经过系统的速度,解决生产消息和消费消息处理速度不一致的情况。

削峰

在访问量剧增时,通过消息队列的拦截,可以让不符合条件的请求直接返回给用户拒绝处理的信息,而不会再去走后台代码耗费性能

 

 

消息队列的两种模式

 

点对点模式(一对一,消费者主动从消息队列中拉取数据,消息收到后清除消息队列中对应内容)

对一个消息而言,只会被一个消费者消费

 

发布/订阅模式(一对多,消费者消费数据之后不会清除消息队列中的数据)

一个消息可能会被多个消费者消费

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值