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
缺点:
- 增加系统复杂度
- 消息丢失、重发问题,大量消息积压
- 系统可用性降低(两个接口调用加入mq,如果mq挂掉,服务可能出问题)

浙公网安备 33010602011771号