我们使用哪个JMS实现?
我们正在使用ActiveMQ 5.2作为我们选择的实现,而我们是在不久前选择的。目前,它的性能足以供我们使用。一段时间以来,我一直在想使用其他Java消息服务实现,为什么?当然有不止几个。
解决方案
在我最近的一个项目中,我们使用了Sonic MQ。良好的总体实现以及与.NET的良好绑定。
我们遇到了一些可伸缩性问题,但是我不得不承认,可伸缩性要求非常严格:如果我可以正确地回忆起,那么每秒大约有20,000次混乱,在200个不同的客户端之间没有任何延迟(每个客户端都必须接收每条消息)同时)。
我使用了JBossMQ,它随JBoss应用服务器一起提供,最高版本为4,它虽然可靠但受限制。 JBoss Messaging是JBossAS 5的替代品,它是一个巨大的改进。
ActiveMQ我真的很讨厌。开发人员似乎已经在追求性能和功能,以至于损害了稳定性,并且这确实是个错误。考虑到它是Geronimo的JMS架构,我担心。
我们通过Camel框架依赖于AMQ(5.1),并且没有任何问题。 AMQ 4有点腥。
TIBCO EMS。它是带有Java / JMS,C,.net和其他绑定的商业消息服务。
Sun的开源OpenMQ(https://mq.dev.java.net/)。我们可以免费获得付费支持。
请参阅此博客文章,以了解与ActiveMQ的一些比较-http://alexismp.wordpress.com/2008/06/06/openmq-the-untold-story/。
我听说OpenMQ更稳定。
ActiveMQ更灵活。例如,我们可以将其与更多语言一起使用。 ActiveMQ的邮件列表上可能有比OpenMQ更多的人。
IBM WebSphere MQ 5和6
活动MQ 5.2.0
另请访问Micro QueueManager,网址为http://codingjunky.com/page5/page4/page4.html。它体积小,易于安装,可用于较小的项目。
使用WebLogic时的WebLogic JMS提供程序。效果很好。