写点什么

使用消息队列有什么优点?有什么缺点?

作者:擎天圣同学
  • 2023-09-12
    新加坡
  • 本文字数:497 字

    阅读完需:约 2 分钟

优点

  • 解耦:消息队列可以将应用程序之间的耦合度降低。当一个应用程序将消息写入队列时,它并不需要知道消息将被哪个应用程序处理,只需要知道消息被处理了。

  • 异步:消息队列可以提供异步处理的能力,使得一些不需要实时处理的操作可以在后台处理。

  • 可靠性和扩展性:消息队列系统可以保证消息传递的可靠性,避免消息丢失或重复。同时,它们也支持扩展性,可以应对大量消息和用户的需求。

  • 解决高并发:消息队列可以在高并发的环境中使用,通过分流来保证系统的稳定性。

缺点

  1. 配置复杂:消息队列系统一般需要进行配置和调优,可以将更多的开销放在了部署和设置上。

  2. 稳定性:消息队列的稳定性可能受到网络延迟、高负载等因素的影响,需要进行监控和调整。

  3. 一致性问题 A 系统处理完了直接返回成功了,人都以为你这个请求就成功了;但是问题是,要是 BCD 三个系统那里,BD 两个系统写库成功了,结果 C 系统写库失败了,你这数据就不一致了。所以消息队列实际是一种非常复杂的架构,你引入它有很多好处,但是也得针对它带来的坏处做各种额外的技术方案和架构来规避掉。


总之,使用消息队列可以提高应用程序之间的解耦、异步处理能力、可靠性和扩展性,但是需要花费时间和精力进行配置和维护。

用户头像

还未添加个人签名 2019-12-01 加入

还未添加个人简介

评论

发布
暂无评论
使用消息队列有什么优点?有什么缺点?_擎天圣同学_InfoQ写作社区