我们为什么以及何时应该使用JMS或AMQP等异步消息传递?

时间:2016-09-26 17:55:44

标签: asynchronous jms amqp

从概念上讲,我们何时应该使用异步消息?为什么?我们是否无法将消息内容存储到某个数据库存储并且为了处理这些消息而经常运行预定作业?

例如,使用JMS或AMQP为系统开发带来了真正的好处吗?有没有办法简化这种设计并获得相同的结果?

1 个答案:

答案 0 :(得分:3)

很快,是的,您可以使用DB代替它,以满足您的速度和其他资源(CPU / RAM)等需求。作为任何专业解决方案,JMS允许您最大限度地有效地解决特定类别的任务 - 异步消息传递。

此外,例如,使用JMS,您可以获得“开箱即用”的某种可扩展性解决方案:您可以从不同的服务实例订阅到单个队列中的事件,因此JMS将根据性能自动进行负载平衡您的事件处理器服务。

除了队列之外,这里还有另一个有用的对象 - 主题。它们可以同时向多个订阅者广播事件,因此您需要自己实现它。