我正在寻找一个快速、可靠且可以跨机器分布的排队系统。平台是 Linux。最好是开源的。
RabbitMQ 和 ZeroMQ 看起来都不错,但我没有使用这些系统或任何其他排队系统的经验。您能给我指明正确的方向吗?
答案1
ZeroMQ 和 RabbitMQ 都支持一种名为 AMQP 的开放消息协议。AMQP 的优势在于,它被设计为两种商业消息队列(IBM 和 Tibco)的高度稳健和开放的替代方案。
但是,ZeroMQ 不支持崩溃重启后的消息持久性。因此我们只能使用 RabbitMQ。(话虽如此,如果您不需要持久性,ZeroMQ 还是相当有趣的……延迟极低,拓扑灵活)。
答案2
不久前,我对 ZeroMQ、RabbitMQ、MSMQ 和 ActiveMQ 做了一个非常基本的评估。http://mikehadlow.blogspot.com/2011/04/message-queue-shootout.html
答案3
详细描述在这里。但请不要 100% 依赖它。3 件事有 3 个目标。
对于基于事务的实时快速数据传播,ZeroMQ 是不错的选择。RabbitMQ 是高消息可靠性的最佳选择。中间解决方案是 ActiveMQ
答案4
我们对各种消息传递方法进行了评估。
BoostASIO(套接字)、ZeroMQ(轻量级框架)和 OpenDDS(OMG DDS 规范的全部功能实现)
可以找到描述结果的论文这里。结果可能不如你所料。
披露:发布者是进行评估的公司的首席执行官,并且该公司的产品也包含在评估之中。