当前位置:   article > 正文

kafka、activemq、rabbitmq、rocketmq都有什么优缺点和使用场景_ribbitmp activem

ribbitmp activem

为什么使用消息队列

消息队列的常见使用场景有很多但是核心的有三个:解耦、异步、削峰

消息队列的有点和缺点

优点:特殊场景下解耦、异步、削峰。

缺点:

  • 系统可用性降低:系统引入的外部依赖越多,越容易挂掉,本来你就是A系统调用BCD三个系统的接口就好了,人ABCD四个系统好好的没什么问题,你偏加个MQ进来,万一MQ挂了怎么办,整套系统崩溃了,就完蛋了

  • 系统复杂性提高:硬生生加个MQ进来,你怎么保证消息没有重复消费?怎么处理消息丢失的情况?怎么保证消息传递的顺序性?

  • 一致性问题:系统A处理完了直接返回成功了,人家都认为你这个请求成功了;但问题是,要是BCD三个系统哪里BD系统成功了,结果C系统写库失败了,咋整?数据就不一致了;所以消息队列是一种非常复杂的架构,引入它有很多好处,但是也得针对他带来的坏处做各种额外的技术方案和架构来规避掉。做好之后你会发现系统复杂度提升了一个数量积,但是关键时刻,用,还是要用的。

kafka、activemq、rabbitmq、rocketmq都有什么优缺点

具体参考:https://mp.weixin.qq.com/s/qwtOAlM9VvMvrKfIDWZmTA

https://github.com/doocs/advanced-java/blob/main/docs/high-concurrency/why-mq.md

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/酷酷是懒虫/article/detail/1007843
推荐阅读
相关标签
  

闽ICP备14008679号