如何在 RabbitMQ 和 ZeroMQ 或其他东西之间进行选择?

Jas*_*hen 26 performance message-queuing

我正在寻找一种快速可靠的排队系统,它可能可以跨机器分布。平台是Linux。开源是首选。

RabbitMQ 和 ZeroMQ 看起来都不错,但我没有使用这些或任何其他排队系统的经验。你能为我指出正确的方向吗?

kol*_*pto 16

ZeroMQ 和 RabbitMQ 都支持称为 AMQP 的开放消息传递协议。AMQP 的优势在于,它被设计为一种高度健壮和开放的替代方案,可替代现有的两个商业消息队列(IBM 和 Tibco)。

然而,ZeroMQ 不支持跨崩溃重启的消息持久性。这给我们留下了 RabbitMQ。(也就是说,如果您不需要持久性,ZeroMQ 非常有趣……令人难以置信的低延迟和灵活的拓扑结构)。

  • 小更正,RabbitMQ 是 AMQP 实现,ZeroMQ 不是。这个有趣的历史:) http://lists.openamq.org/pipermail/openamq-dev/2010-March/001598.html (10认同)
  • ZeroMQ 不支持持久性是不正确的。ZeroMQ 只是一个消息传递库,如果需要,您可以轻松编写一个持久化消息的代理。ZeroMQ 更像是一个工具箱,您可以使用它来构建自定义消息传递系统,而 AMQP 是一种协议,它授权代理并指定许多代理行为,例如消息持久性。 (7认同)

Mik*_*low 12

不久前,我对 ZeroMQ、RabbitMQ、MSMQ 和 ActiveMQ 进行了非常基本的评估。http://mikehadlow.blogspot.com/2011/04/message-queue-shootout.html


小智 5

详细说明在这里。但是请不要100%依赖于此。3件事有3个目标。

消息队列评测笔记

对于基于事务的实时快速数据传播,ZeroMQ 是很好的。RabbitMQ 的高消息可靠性是最好的。中间解决方案是 ActiveMQ