MQ作用与缺点

消息队列,原理:先进先出

作用:上下游传递消息,实现一种跨进程的通信,消息的上游服务只依赖 MQ 即可,与下游服务解耦
应用:
1.流量削峰
2.应用解耦
3.异步处理(不用考虑调用失败、超时的情况)

A 调用 B,但是 B 需要花费一段时间来处理。没有 MQ 的时候通常这样处理:
A 轮询的调用 B 的查询,看看结果是不是处理好了。
A 提供一个callback 回调接口,B 执行好了调用这个api接口通知 A。
加入 MQ 后,这时 A 再调用 B 后,只需要监听 B 处理完成的消息即可。
当 B 处理完成后,会发送一条消息给 MQ,然后 MQ 会把消息转发给 A。
所以,现在 A 既不用轮询 B,也不用提供回调api

缺点:
  1. 增加系统复杂度
  2. 消息丢失、重发问题,大量消息积压
  3. 系统可用性降低(两个接口调用加入mq,如果mq挂掉,服务可能出问题)
posted @ 2023-02-13 16:58  -冰冻罗非鱼  阅读(62)  评论(0)    收藏  举报