【问题标题】:Exposing a library via zeromq通过 zeromq 暴露一个库
【发布时间】:2015-03-16 20:12:49
【问题描述】:

我想知道通过 zeromq 公开库的最佳方式是什么。比如说,我在一台机器上安装了一个机器学习库 (mll),而我在另一台机器上运行了一个 zeromq 代理。现在,如果我有一个 zeromq 客户端需要调用 mll 中的函数,它如何通过代理来实现。

我想知道我需要采取哪些步骤才能以通用方式为图书馆工作。

【问题讨论】:

    标签: libraries zeromq distributed-computing


    【解决方案1】:

    基本上,您需要有一个“侦听器”,它从 ZMQ 获取数据并将其提供给您的机器学习后端代码,然后将结果传输回请求者。

    有很多设计选择要做,例如在客户端和服务器之间使用什么格式来序列化数据(JSON?YAML?Pickle?Thrift?...),以及如何编码请求和请求选项。但综合考虑,这是一个非常简单的 ZMQ 用法。

    当您想要功能更丰富、更完整、更健壮等设计时,问题就来了——比如多线程或多进程服务器、多机器可扩展性、安全的用户/请求身份验证和授权、作业报告和仪表板,或作业检查点。所有这些“附加功能”都是常见的“网络作业调度程序”或“(企业)消息代理”功能,它们往往与CeleryRQ 等软件包一起提供开箱即用的功能。

    如果您不想走完整的“消息代理中间件”路线,您可以先检查其他基于轻量级 ZMQ 作业代理的设计,例如 this one from Jeff Knupp

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多