Python ZeroMQ:在 ROUTER 和 REP 配置中将两个不同的客户端连接在一起

Python ZeroMQ : connecting two different clients together in a ROUTER and a REP configuration

我的配置如下 server/clients :

我希望服务器能够告诉真正的客户端连接(直接或通过服务器以某种方式)到在 worker 上打开的 websocket 客户。但似乎,我无法从 ZeroMQ 套接字中检索工作人员的 IP 地址。

如果没有一些肮脏的 IP 地址检索技巧,我怎么能做到这一点?

如果没有一些肮脏的 IP-address 检索技巧,我怎么能做到这一点?

最好是在 serverworker 将在其设置/初始化时发生,其中 worker 在被要求提供此类答案后,将这些配置详细信息告知服务器。

鉴于此,“new”-real-client .connect()-s 是 REQ到服务器的REP,并询问服务器下一步去哪里,服务器可以回答这个和"new"-real-client 将通过这种方式收到合法的 IP-address:port# 以及任何其他 TCP/IP-L3 服务建立和使用所需的任何额外详细信息。

就这么简单:o)


Design-side结语:

因为还有一些更进一步的,design-side含义,硬连线在每种类型的 ZeroMQ 套接字的内部 Access-Point,可能会发现更适合在服务器端提供单独的 REP-AccessPoint,以便不要让每个“new”-real-client 变得依赖于服务器和 "new"-[ 这样的控制域之外的事件的存在=68=],而是允许这两个 REQ/REP-endpoints 享受任何东西的独立性,除了他们暂时的(半)私人细节(重新)协商(s ).