JMS/AMQP代理比较

4
阅读了一些有趣的SO帖子和在Google上找到的许多页面后,我想请求您帮助决定选择哪种JMS/AMQP代理。我们公司面临一个简单的问题。我们需要使用可靠的基于消息的系统来通信集群中的节点。由于我们已经有“自己的”解决方案,随着我们在其中添加越来越多的功能(而且它很有bug :)),它变得相当混乱。
我真的不想提出关于哪个代理更好/更差的问题,我更愿意询问您个人对JMS/AMQP代理的可靠性/复杂性/灵活性的经验和观察。(即,我发现一些关于ActiveMQ的令人困惑的信息,说它还不稳定,但许多人认为它是最好的JMS解决方案)
目前,我们的系统每秒发送约100个mps,因此负载并不大,但随着越来越多的节点被添加到集群中,我们需要能够将其扩展。每个节点应该发送和接收消息。我们需要找到尽可能可靠的解决方案。
谢谢您的回答。
3个回答

3

一般来说,更为强大的代理商是商业代理商。我在生产中使用过ActiveMQ,它有一些问题,但我能够解决。它支持每秒最多20K条消息。我会再次使用它。


2
我将从我了解最多的代理开始。
TIBCO EMS
优点:
- 非常稳定 - 具有 C#,C 和 Java API - 良好的支持 - 成熟,具有许多不错的增强功能,这些体现在诸如如何在队列上向消费者分发消息等细节中。
缺点:
- 昂贵 - 网络上没有太多信息
我的老板曾帮助开发 AMQP 规范,他非常看好 RabbitMQ。我没有实际使用过它,因此无法评论。
当然,与 JMS 代理相比,AMQP 的一个重要优势是互操作性,即从一个供应商的代理发送的消息可以被任何其他 AMQP 代理实现读取。

1

我们在大型安装中使用IBM Websphere MQ - 它是商业软件,但是是一个强大、可扩展的解决方案。对于小到中等规模的安装,我们使用ActiveMQ和OpenMQ。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接