【问题标题】:What are zeromq use cases?什么是 zeromq 用例?
【发布时间】:2011-05-28 19:45:09
【问题描述】:

你能举一些 zeromq 的例子吗?

【问题讨论】:

  • ZeroMQ 的用例是连接网络上移动部件的任何东西。任何类型的分布式系统。由于将 ZeroMQ 添加到节点的占用空间非常小,因此您可以并行处理 10,000 个系统(就像 Salt 所做的那样)。由于处理一条消息的成本非常低,您可以处理非常大的容量(每秒数百万条消息)。我们使用 ZeroMQ 将移动设备连接到一个点对点的网格中。我们使用它来构建后端,无需更改代码即可从一个盒子扩展到多个盒子。
  • @PieterHintjens 我正在做一个手机上的点对点项目,并打算使用 ZeroMQ。 ZeroMQ 在任何给定实例中可以处理的设备数量是否有任何限制?
  • @AndroidDev 您打算通过应用商店进行部署吗?我的理解是 ZeroMQ 是 LGPL,由于最终用户重新链接的要求,移动应用商店与 LGPL 不兼容。
  • zeromq.org/area:faq#toc4 好像license没问题
  • 尽管问题很广泛,但当 ZeroMQ 的作者自己回答时,没有什么比这更好的了。 RIP,谢谢@PieterHintjens

标签: zeromq


【解决方案1】:

假设您想要一个公告板。通过订阅公告板,您希望只允许某些人看到它。

这可以使用 ZeroMQ 的发布者/订阅者模型来完成。

现在,假设您需要发送一些异步消息。也就是说,当一条消息从系统 A 发送并需要到达系统 B 时,即使系统 A 和 B 在发送该消息时无法通信,也可以保证稍后传递。您可以想象一个用例是 SMS 消息。

这可以使用 ZeroMQ 的异步消息传递模型来完成。

基本上,任何符合 JMS 标准的解决方案(例如 ZeroMQ)都可以让您以尽可能少的麻烦可靠地向其他方广播或发送“消息”,无论该消息是什么。

【讨论】:

  • ZeroMQ 不兼容 JMS。它通过网络以字节数组的形式发送数据,它不关心你使用什么语言。
  • 确实 ZeroMQ 不兼容 JMS。 JMS接口需要自己实现。
【解决方案2】:

请查看ZeroMQ blog——他们会定期发布有关不同部署、语言绑定等的使用案例。

【讨论】:

  • 博客有英文版吗?整个页面对我来说都是印度尼西亚语......
  • 这些事情可能发生在 11 岁 (!!) 答案中的链接。试试回程机?
【解决方案3】:
【解决方案4】:

上次 Rick Olson 创建了 Dropbox 的“克隆”:https://gist.github.com/122849a52c5b33c5d890

【讨论】:

    【解决方案5】:

    他们还有一个出色的guide,可以让您全面了解可能的用例及其实时应用程序。

    如果你有更多的时间,你可以通过整个website

    【讨论】:

      【解决方案6】:

      我个人使用这个库是跨语言交流:

      我在 Python 和 Haskell 之间传递数据

      【讨论】:

        猜你喜欢
        • 2018-11-14
        • 1970-01-01
        • 2017-08-11
        • 2017-07-23
        • 2016-03-09
        • 2014-06-28
        • 2010-12-21
        • 1970-01-01
        • 2015-03-02
        相关资源
        最近更新 更多