使用c#和python使用RouterDealer代理发送消息

2024-05-08 18:06:50 发布

您现在位置:Python中文网/ 问答频道 /正文

通过使用一个简单的请求-应答,我可以让c#(客户机)和python(服务器)相互通信。但是,我希望我的web应用程序是基于c\asp.net为了保持稳定并需要更多的客户机和服务器,所以我尝试使用带有python的Router Dealer代理连接c#和python。在

我尝试先运行代理python脚本,然后运行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()

Tags: 服务器脚本backend代理客户机bindmain错误
1条回答
网友
1楼 · 发布于 2024-05-08 18:06:50

我假设您的服务器使用bind,因此代理应该connect而不是同时使用bind。在

注意:在zeromq中,应用程序启动的顺序并不重要,因此您可以告诉您的代理程序connect到一个尚不存在的服务器,当服务器启动时,将建立连接。在

相关问题 更多 >