【问题标题】:Can pyzmq pub/sub sockets be used bidirectionally?pyzmq pub/sub 套接字可以双向使用吗?
【发布时间】:2014-02-05 00:40:43
【问题描述】:

我正在使用pyzmq pub/sub socket 作为服务器向客户端订阅者发布通知。它工作得很好,但我有一个问题:

有什么方法可以使用同一个套接字将信息发送回服务器?或者我需要一个单独的插座吗?

用例:我只想让服务器查看谁在积极订阅通知,所以我希望我可以允许客户端定期发回“心跳”消息。我有一个用例,如果没有客户端在监听,我希望服务器生成一个。 (这是一个仅使用 localhost 的多进程系统。)

【问题讨论】:

    标签: python sockets zeromq pyzmq


    【解决方案1】:

    您需要一个单独的套接字。来自 ZMQ 指南 (http://zguide.zeromq.org/page:all#Pros-and-Cons-of-Pub-Sub):

    消除回声对于真正的可扩展性至关重要。使用 pub-sub,模式可以干净地映射到 PGM 多播协议,该协议由网络交换机处理。换句话说,订阅者根本不连接到发布者,他们连接到交换机上的多播组,发布者将其消息发送到该组。

    为了使其正常工作,PUB 套接字将不会向订阅者发送回数据(至少不会以对用户可见的方式。心跳问题在指南中进行了深入讨论:http://zguide.zeromq.org/page:all#The-Asynchronous-Client-Server-Pattern

    此外,如果您想跟踪客户,请查看 7/MDP 和 18/MDP 协议(​​http://rfc.zeromq.org/spec:7 - 指南中也对此进行了讨论)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-05-17
      • 2014-10-01
      • 2018-08-23
      • 1970-01-01
      • 2018-10-06
      • 2018-03-24
      • 2023-03-23
      • 1970-01-01
      相关资源
      最近更新 更多