关于消息队列的几点思考(1)

首先是消息队列常见的使用场景,其实场景有很多,但是比较核心的使用场景有三个:解耦、异步、削峰

解耦

在不使用MQ时的系统模块耦合场景:

使用MQ后系统解耦:

如果说在自己负责的系统中是否有类似的场景,就是一个系统或者是一个模块,调用了多个系统或者模块,互相之间的调用关系很复杂,尤其是维护起来会很麻烦。但其实这个调用是不需要直接同步调用接口的,就需要考虑在自己的项目中是否可以使用MQ进行异步解耦。

异步

在不使用MQ的同步高延时请求:

使用MQ进行异步化之后的接口性能优化:

关于异步的性能优化的时间的计算,自己觉得应该将MQ队列交给系统ABC处理的时间也应算上,取最大值即为处理请求所需要的总时长。

削峰

在没有使用MQ时高并发情况下系统被宕的场景:

说明:Mysql一般承受的每秒钟并发量在2000,如果每秒钟有5000并发,Mysql可能直接崩溃

使用MQ进行削峰的场景:

在每一个系统中都会有高峰期和低谷期,如果说使用MQ进行削峰,在低谷期处理高峰期所积压的消息,感觉一定会影响用户使用体验,和第二条异步中互联网企业要求一个请求的处理都必须在200ms之内完成有矛盾。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值