商业消息中间件与开源中间件的优势
我一直在评估几种开源消息队列技术,例如 RabbitMQ、ActiveMQ、OpenAMQ 等。我的问题是,使用 Tibco EMS、WebSphereMQ、Sonic 等商业技术而不是 Active 等技术可以获得什么好处还是兔子? PHP 将是涉及的主要语言,尽管 Java 系统也将进行交互。
I've been evaluating several opensource message queue technologies, such as RabbitMQ, ActiveMQ, OpenAMQ, etc. My question is, what benefits are gained by using a commercial technology such as Tibco EMS, WebSphereMQ, Sonic, etc. instead of something like Active or Rabbit? PHP will be the primary language involved, although Java systems will be interacting as well.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
我想说的是,好处很少而且相差甚远。在投资之前,您确实需要确保商业系统适合您,因为很可能没有回头路。
其中一些东西是如此深奥,如此容易被供应商锁定,如此重量级,以至于你会觉得你背上有一只大猩猩,而不仅仅是一只猴子;)
I'd say the benefits are few and far between. You really need to be sure that a commercial system is for you before you invest as there is likely to be no going back.
Some of these things are so esoteric, so prone to vendor lock-in, so damn heavyweight that you'll feel like you have a gorilla on your back, not just a monkey ;)
这些商业技术很好,但投资可能会很大。做出决定时必须考虑年度许可成本和持续支持成本。就供应商锁定而言,在商业世界中只有一个供应商为特定产品提供支持。在开源世界中,通常有不止一个供应商提供支持。以 ActiveMQ 为例。 Progress Software 和 SpringSource 都为 ActiveMQ 以及其他一些协议提供支持协议。
此外,在商业世界中,您永远无法亲自查看源代码。对于像ActiveMQ这样的产品,任何人都可以获取源代码。这是非常强大的,因为它意味着您可以添加功能等,并且很可能将它们添加到产品中。
ActiveMQ 拥有一个很棒的社区并且部署非常广泛。 ActiveMQ 为多种语言提供客户端 API,包括 C/C++、Java、.NET、Perl、PHP、Python、Ruby 等。
Those commercial technologies are good, but investment in them can be steep. Both yearly license costs and on-going support costs must be considered when making a decision. As far as vendor lock-in goes, in the commercial world there's only one vendor offering support for a given product. In the open source world, there's typically more than one vendor offering support. Consider ActiveMQ for example. Both Progress Software and SpringSource offer support agreements for ActiveMQ as well as some others.
Also, in the commercial world, you won't ever get to look a the source code yourself. For a product like ActiveMQ, anyone can grab the source code. This is pretty powerful because it means that you can add features, etc. and quite possibly get them added to the product.
ActiveMQ has a great community and is very widely deployed. ActiveMQ provides client APIs for many languages including C/C++, Java, .NET, Perl, PHP, Python, Ruby and more.
围绕 RabbitMQ 等项目有很多很棒的社区(例如查看邮件列表)。此外,如果成本是一个问题,那么显然开源是一个胜利。
There are great communities around projects like RabbitMQ (check out the mailing list for example). Also, if cost is an issue, obviously open source is a win there.
我发现最大的区别是运营支持和管理。商业供应商通常为运营/支持人员提供更好的工具来重新提交、编辑消息等。
这通常是开源产品的弱点,如果纠正的话,应该会导致商业供应商严重缺乏睡眠。
The biggest difference I have found is operational support and management. The commercial vendors usually provide better tools for ops/support staff to resubmit, edit messages etc.
This is often a weakness of open source offerings, which if rectified, should cause some serious lack of sleep for commercial vendors.
我认为在选择消息传递系统之前最好彻底检查您的需求:
如果您打算使用开源 - 一定要关注社区 - ActiveMQ 是所有开源消息供应商中最活跃的社区 - 而且它也是 Apache - 这意味着多样性并且不依赖任何单个开发人员或供应商进行交付。
I think it's always best to thoroughly examine your requirements before choosing a messaging system:
And if you are going to use open source - always look at the community - ActiveMQ is the most active community of any open source message vendor - and it's also Apache - which means diversity and no reliance on any single developer or vendor for delivery.