【问题标题】:recommend an opensource message queue service [closed]推荐一个开源消息队列服务[关闭]
【发布时间】:2012-05-13 13:50:17
【问题描述】:

谁能为我推荐一个开源消息队列?像 JMS、gearmand、zeroMq、Amazon SQS。 Tt最好满足以下几点(非强制性):

  1. 分布式且可扩展。
  2. 支持异步消息。
  3. 最好支持发布/订阅
  4. 高可用,最好不要丢消息。
  5. 高性能
  6. 最好支持php sdk,以及c/c++开发的mq服务器。
  7. 易于使用
  8. 项目处于活动状态。

非常感谢!

【问题讨论】:

  • Stack Overflow 不是这个问题的合适论坛。

标签: jms message-queue zeromq gearman mq


【解决方案1】:

经典经纪人:

  • Apache ActiveMQ — 它是来自 Apache 的 JMS 代理实现。用 Java 编写。
  • RabbitMQ — 用 Erlang 编写的流行 AMQP 代理实现。
  • StormMQ — 用 Ja​​va 编写的 AMQP 代理。直接替换 RabbitMQ(不需要更改客户端)。
  • Apache Qpid — AMQP 代理,RabbitMQ 的另一种替代方案。用 Java 和 C++ 编写。

Above 还提供 HTTP (REST API)、XMPP 和 STOMP 传输。

其他东西:

  • ZeroMQ——这不是一个代理,而是一个库。允许brokered or broker-less architectures。非常轻巧,用途广泛且速度非常快。用 C++ 编写。
  • Amazon SQS — 缺乏其他人的功能。诸如消息之类的尴尬限制不能保证按顺序进行,也不能保证只传递一次。没有发布/订阅架构。仅限与 AWS 结合使用。相当长的延迟。

  1. 分布式且可扩展。 — 以上所有
  2. 支持异步消息。 — 以上所有
  3. 最好支持发布/订阅 - 除了 SQS
  4. 高可用,最好不要丢消息。 — 全部,部分取决于设置
  5. 高性能 - 吞吐量方面,延迟方面有所减少
  6. 最好支持 php sdk,-以上所有PHP 内置了 AMQPSTOMP 客户端,ZMQSQS 具有特定绑定。时间>
    还有c/c++开发的mq服务器——只有ZeroMQ,但不是真正的服务器
  7. 易于使用 - 以上所有
  8. 项目处于活动状态。 — 以上所有

【讨论】:

  • (+1) 我还将 Apache 的 QPid 添加到“经典代理”部分,这是 RabbitMQ (AMQP) 的替代品。对于 OP,我真的建议您查看 RabbitMQ、QPid 或 ZeroMQ。我个人在消息传递领域花了很多时间(你可能会说这是我的专长),我倾向于避免使用 JMS 或任何其他“锁定”解决方案,而倾向于基于 AMQP 的解决方案。
【解决方案2】:

ActiveMQ 符合要求。但它不是 c++

【讨论】:

    【解决方案3】:

    ActiveMQ 是最好的。还有对C++的支持...参考CMS

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-03-16
      • 1970-01-01
      • 1970-01-01
      • 2010-09-06
      • 1970-01-01
      • 1970-01-01
      • 2010-10-21
      相关资源
      最近更新 更多