【问题标题】:zeroMQ vs node.js vs beanstalkd vs TwistedzeroMQ vs node.js vs beanstalkd vs Twisted
【发布时间】:2011-01-21 12:56:46
【问题描述】:

我有以下要求:

  1. 可靠的消息传递:确保 交货,按顺序, 不重复
  2. 基于消息过滤和路由 根据可定制的标准
  3. 消息多播
  4. 消息收件人列表,发送消息 只发给指定的收件人
  5. 消息优先级
  6. 内置安全性

我想知道标题中提到的每个解决方案都支持上述哪些要求。

如果您只了解一种产品,请分享您对它的看法。

【问题讨论】:

    标签: node.js twisted messaging zeromq beanstalkd


    【解决方案1】:

    0Mq 和 Twisted 是构建连接系统的工具,node.js 是一个网络服务器(有各种插件可以通过 beanstalkd 或 0Mq 与其他系统通信)。

    在列出的四种技术中,只有 Beanstalkd 实际上是一个队列。它可以使用命名的“管”来区分潜在的目的地(根据需要让所有工人来自一个或多个管)。如果每个工作人员都从特定的管道中读取数据,您可以使用它有点像多播,让各个工作人员从他们自己定义的来源中提取数据。

    如果您真的需要多播和路由,您可能需要更复杂的东西。 Rabbit.mq 可能完成大部分工作,但如果您想将标准放入队列/路由软件本身,您可能需要完整的 ESB

    【讨论】:

    • ZeroMQ 是一个网络库。它启用队列,并在内部使用它们。您还可以下载启用 ZMQ 的程序,这些程序还可以实现更强大的基于磁盘的队列,例如 github.com/mkoppanen/pzq/wiki/An-Introduction-To-PZQ
    • 描述错误。 node.js 是一个网络服务器就像说 ruby​​ on rails 是一个网络服务器。也就是说,ZeroMq 是一种协议,就像 TCP 是一种协议一样,具有多种语言的实现。 Twisted 类似于 nodejs,但在 python 中。最后但同样重要的是,Beanstalkd 是一个有自己的队列协议的工作服务器。
    • mmmmmm zeromq 协议 (O.O)(来自 zeroMQ 页面:充当并发框架的套接字库。)? Beanstalk 是队列服务器而不是工作者。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-09-07
    • 2011-07-31
    • 2012-08-19
    • 1970-01-01
    • 1970-01-01
    • 2012-05-04
    • 2015-04-10
    相关资源
    最近更新 更多