5

我一直在评估几种开源消息队列技术,例如 RabbitMQ、ActiveMQ、OpenAMQ 等。我的问题是,使用 Tibco EMS、WebSphereMQ、Sonic 等商业技术而不是 Active 之类的技术可以获得什么好处还是兔子?PHP 将是主要涉及的语言,尽管 Java 系统也会进行交互。

4

6 回答 6

15

我会说好处很少而且相差甚远。在投资之前,您确实需要确保商业系统适合您,因为可能没有回头路。

其中一些东西是如此深奥,如此容易被供应商锁定,如此重量级,以至于你会觉得你的背上有一只大猩猩,而不仅仅是一只猴子;)

于 2009-10-12T21:35:50.807 回答
6

那些商业技术很好,但对它们的投资可能很陡峭。做出决定时必须考虑年度许可成本和持续支持成本。就供应商锁定而言,在商业世界中,只有一个供应商为给定的产品提供支持。在开源世界中,通常有不止一个供应商提供支持。以 ActiveMQ 为例。Progress Software 和 SpringSource 都为 ActiveMQ 和其他一些提供支持协议。

此外,在商业世界中,您永远无法亲自查看源代码。对于像 ActiveMQ 这样的产品,任何人都可以获取源代码。这非常强大,因为这意味着您可以添加功能等,并且很可能将它们添加到产品中。

ActiveMQ 有一个很棒的社区,并且部署非常广泛。ActiveMQ 为多种语言提供客户端 API,包括 C/C++、Java、.NET、Perl、PHP、Python、Ruby 等。

布鲁斯

于 2009-12-01T18:22:41.227 回答
4

我认为在选择消息传递系统之前,最好彻底检查您的要求:

  • 例如,并非所有商业供应商都会支持 PHP。ActiveMQ 和 RabbitMQ 会。
  • 并非所有消息传递系统都可以支持非常大的队列大小 - 尽管 ActiveMQ 支持
  • 并非所有消息传递系统都能在代理硬停止后不丢失 ActiveMQ 将丢失的消息——而您不必使用事务。

如果你打算使用开源——总是看看社区——ActiveMQ 是所有开源消息供应商中最活跃的社区——它也是 Apache——这意味着多样性,并且不依赖任何单一的开发人员或供应商来交付。

于 2009-12-30T15:23:00.763 回答
4

我发现最大的不同是运营支持和管理。商业供应商通常为操作/支持人员提供更好的工具来重新提交、编辑消息等。

这通常是开源产品的一个弱点,如果得到纠正,应该会导致商业供应商严重缺乏睡眠。

于 2010-09-22T02:55:33.803 回答
4

RabbitMQ 等项目周围有很多很棒的社区(例如,查看邮件列表)。此外,如果成本是一个问题,那么开源显然是一个胜利。

于 2009-10-07T17:08:15.510 回答
1

如果您使用商业产品,它会附带一切(只是我们必须使用),但所有开源产品都会具有基本功能,但我们仍然可以实现商业产品功能(涉及大量开发)

于 2016-04-08T23:41:56.757 回答