Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python pyzmq发布/订阅套接字能否双向使用?_Python_Sockets_Zeromq_Pyzmq - Fatal编程技术网

Python pyzmq发布/订阅套接字能否双向使用?

Python pyzmq发布/订阅套接字能否双向使用?,python,sockets,zeromq,pyzmq,Python,Sockets,Zeromq,Pyzmq,我正在使用for服务器向客户端订阅者播发通知。它工作得很好,但我有一个问题: 有没有办法使用相同的套接字将信息发送回服务器?或者我需要一个单独的插座吗? 用例:我只想让服务器看到谁在积极订阅通知,所以我希望可以让客户端定期发送“心跳”消息。我有一个用例,如果没有客户端在侦听,我希望服务器生成一个。(这是一个仅使用本地主机的多进程系统。)您需要一个单独的套接字。从ZMQ指南()中: 消除喋喋不休对于真正的可伸缩性至关重要。通过pub-sub,模式可以清晰地映射到由网络交换机处理的PGM多播协议。换

我正在使用for服务器向客户端订阅者播发通知。它工作得很好,但我有一个问题:

有没有办法使用相同的套接字将信息发送回服务器?或者我需要一个单独的插座吗?


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

您需要一个单独的套接字。从ZMQ指南()中:

消除喋喋不休对于真正的可伸缩性至关重要。通过pub-sub,模式可以清晰地映射到由网络交换机处理的PGM多播协议。换句话说,订阅者根本不连接到发布者,而是连接到交换机上的多播组,发布者向该组发送消息

为了实现这一点,PUB套接字将不会向订阅者发回数据(至少不会以用户可见的方式)。指南中深入讨论了令人心悸的问题:

另外,如果您想跟踪客户机,请查看7/MDP和18/MDP协议(-《指南》中也讨论了这一点)