消息队列
INFO
很重要的一part
好处
- 解耦
使用mq当作一个中间的代理(broke),进行应用解耦,使得应用层的系统不用感知底层服务的存在。例如点赞、评论这些就可以直接发消息队列,否则要调接口,很麻烦。
- 异步提速
这里主要体现在直接将消息丢到消息队列即可,不用管后续。但是代价是系统的不一致,需要业务侧可以接受,例如点赞和评论只是本地显示成功,但实际上可能还在人物任务队列中
- 削峰填谷/流量控制
队列长度是有上限的,可以用这个上限限定请求的上限数量,多的就不要了。
- 增强系统的可靠性 任务队列有ack机制,保证消费成功与否都能有保证,在一些消息队列系统里面,也有相关的落库机制可以保证数据不会丢失。