消息队列,任务队列和消息中间件的区别是什么?分别在什么场景下需要用到?

消息队列,任务队列和消息中间件的区别是什么?分别在什么场景下需要用到?

阅读 10.1k
2 个回答

个人理解,欢迎讨论!

消息中间件是消息队列的一种封装实现,提供了应用程序和API!

消息队列=任务队列更像是一种解决方案,一般都是异步,发布和订阅模型,订阅还可以分成是pull和push!

具体场景为:不用实时响应,任务处理时间较长的地方,比如视频格式转换服务,你视频上传成功就可以提示你可以离开本页面,随时可以回来查看任务处理进度,实际就是一个异步任务处理的场景,有N个订阅者收到消息以后在执行处理任务

消息队列和任务队列其实有很大的相似性,消息队列更着重的是消息,也就是告知,而任务队列着重与任务,也就是执行。所以说一般是外部发送消息通过消息队列所在的消息处理服务器,消息处理服务器再转发给相应任务所在的任务服务器并在任务队列中排队等待执行。
消息中间件就是用在消息队列服务器中用于过滤、区分和根据规则进行转发的程序,在分布式系统中更为常见。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏