要举具体例子,才容易理解
- (系统间)解耦
系统同步调用三方接口,性能直接和三方服务挂钩,三方接口性能直接影响系统。因此外部接口不能直接同步调用。如下所示:
B出现故障用户无感知,B恢复自动取消息。消息使系统间解耦,使系统间不互相直接影响。
- 提升系统性能
异步化提升系统性能、降低用户等待时长改善用户体验
如下所示:
系统A和B,A处理业务20ms,B处理业务180ms,A调用B耗时200ms。使用消息中间件,A处理业务20ms,发消息到MQ2ms,然后返回给用户,对用户22ms返回。
- 流量削峰/削峰填谷
双十二活动促销在线系统A面临过万QPS,后端数据系统B只能处理每秒5000并发,这个时候如果将并发全部打到B很可能就挂了。现在引入中间件消息队列MQ,将1万+并发打到MQ,B系统就可按照5000并发处理能力从MQ中获取消息,完成业务中大流量削峰的作用。