【问题标题】:pyzmq: how do you filter at publisher sidepyzmq:如何在发布者端进行过滤
【发布时间】:2014-10-23 16:38:51
【问题描述】:

http://zguide.zeromq.org/ 上显示“发布订阅过滤现在在发布方而不是订阅方完成。这在许多发布订阅用例中显着提高了性能。您可以混合使用 v3.2 和 v2.1/v2 .2 发布者和订阅者安全。”

我正在关注http://learning-0mq-with-pyzmq.readthedocs.org/en/latest/pyzmq/patterns/pubsub.html 上的示例,并且过滤发生在订阅者端。

如何在发布者端进行过滤?

注意:我有 pyzmq-14.3.1

【问题讨论】:

    标签: zeromq pyzmq


    【解决方案1】:

    实现是透明的,ZMQ 功能允许

    用户定义的代码不会对此进行干预。 ZMQ 内部能力是一个决定性因素。在任何一种情况下,SUB 端都会通过 .setsockopt( zmq.SUBSCRIBE, ... )

    设置其订阅首选项

    v2.x / v3.2+ 的实现模型在较低的、基于能力的层面上决定 PUB 端是否有关于如何过滤的知识它的一面,或者 v2.x 是否只是将所有消息泵入所有 .bind() / .connect() ed 传输类并依赖于 SUB 端(无论是 v2.x 还是 v3 .2+ ) 过滤掉那些与 setup list-of-SUB-side-subscriptions 不匹配的内容

    print zmq.pyzmq_version()            # display the localhost ZMQ-capability-model
    

    注:

    从 ZeroMQ v3.x 开始,当使用连接协议(tcp:ipc:)时,过滤发生在发布者端。使用epgm:// 协议,过滤发生在订阅者端。在 ZeroMQ v2.x 中,所有过滤都发生在订阅者端。

    【讨论】:

    • 啊,明白了。 print zmq.pyzmq_version() 打印 14.3.1.
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-25
    • 1970-01-01
    相关资源
    最近更新 更多