使用 c# 和 python 通过 Router-Dealer Proxy 发送消息
Sending message with Router-Dealer Proxy using c# and python
我可以让 c#(客户端)和 python(服务器)通过使用简单的请求-回复相互交谈。但是,我希望基于 c# asp.net 构建的 Web 应用程序稳定并且需要更多客户端和服务器,因此我尝试使用带有 python 的 Router-Dealer Proxy 连接 c# 和 python。
我先尝试 运行ning 代理 python 脚本,然后 运行ning c#(客户端),然后 python(服务器)。但是,当我 运行 python(服务器)时,它会给我一条 "Address in use" 错误消息。
我 运行 是不是按错了顺序或者代理 python 脚本有问题(如下所示)?
5602 = c# 客户端
5603 = python 服务器
def main():
context = zmq.Context()
# Socket facing clients
frontend = context.socket(zmq.ROUTER)
frontend.bind("tcp://*:5602")
# Socket facing services
backend = context.socket(zmq.DEALER)
backend.bind("tcp://*:5603")
zmq.proxy(frontend, backend)
# We never get here…
frontend.close()
backend.close()
context.term()
if __name__ == "__main__":
main()
我假设您的服务器使用绑定,因此代理应该 connect
到它们而不是同时使用 bind
。
注意:在 zeromq 中,应用程序启动的顺序无关紧要,因此您可以告诉您的代理 connect
到一个尚不存在的服务器,当服务器启动时,将建立连接.
我可以让 c#(客户端)和 python(服务器)通过使用简单的请求-回复相互交谈。但是,我希望基于 c# asp.net 构建的 Web 应用程序稳定并且需要更多客户端和服务器,因此我尝试使用带有 python 的 Router-Dealer Proxy 连接 c# 和 python。
我先尝试 运行ning 代理 python 脚本,然后 运行ning c#(客户端),然后 python(服务器)。但是,当我 运行 python(服务器)时,它会给我一条 "Address in use" 错误消息。
我 运行 是不是按错了顺序或者代理 python 脚本有问题(如下所示)?
5602 = c# 客户端
5603 = python 服务器
def main():
context = zmq.Context()
# Socket facing clients
frontend = context.socket(zmq.ROUTER)
frontend.bind("tcp://*:5602")
# Socket facing services
backend = context.socket(zmq.DEALER)
backend.bind("tcp://*:5603")
zmq.proxy(frontend, backend)
# We never get here…
frontend.close()
backend.close()
context.term()
if __name__ == "__main__":
main()
我假设您的服务器使用绑定,因此代理应该 connect
到它们而不是同时使用 bind
。
注意:在 zeromq 中,应用程序启动的顺序无关紧要,因此您可以告诉您的代理 connect
到一个尚不存在的服务器,当服务器启动时,将建立连接.