为什么要使用MQ
1.解耦
比如A系统需要调用B系统的接口传递数据,然而当不需要被调用的时候,A系统需要重新打包部署到服务器,这样操作起来就很麻烦,用上MQ之后,只需要管理MQ的就显得简单的多
2.异步
比如A系统调用B系统的接口,需要等到B系统的整个逻辑处理完之后,A系统才会继续往下执行,响应变慢,给用户反映较差
3.削峰
比如向双十一这样的节日,每秒的并发量就会很大,通常一个MySQL数据库并发量不超过每秒2000,再大就容易引起数据库崩溃,这样就可以在MQ中先堆压着,然后根据系统能支持的并发量,逐一消费
使用MQ的缺点:
1.系统可用性降低:MQ若是挂了,容易引起整个服务挂掉
2.系统复杂性增加:要考虑多方面的问题,比如一致性问题,如何让保证消息不被重复消费,如何保证消息可靠传输
详情见下文链接
https://www.cnblogs.com/xiapu5150/p/9927323.html