消息队列的优缺点
1.优点
解耦、异步、削峰
为什么要使用消息队列?(消息队列的优点)
2.缺点
-
系统可用性降低
引入的外部依赖越多越容易出现问题,本来A系统调用BCD三个接口就够了,但是加入MQ后,就必须考虑到MQ的可用性问题,防止MQ出现问题。
如何保证高可用? -
系统复杂度提高
加入MQ后就必须考虑到消息是否有重复消费的问题,以及消息丢失后如何处理,消息传输的顺序性问题等等各种各样的问题。
如何保证消息不被重复消费?
如何保证消息不丢失? -
数据一致性问题
A系统处理完后返回成功,之后由MQ向BCD中写入数据,若是BC写入成功,但是D写入失败,此时就出现了数据不一致的问题。