【发布时间】:2018-11-08 10:20:55
【问题描述】:
我使用的部分代码基于https://github.com/irmen/Pyro4/tree/master/examples/messagebus 的消息总线示例。我在一台机器上设置了 Pyro4 名称服务器。服务器和发布者也在这台机器上运行。
如果我在这台机器上运行它,订阅者可以工作,但如果我尝试在另一台机器上运行它,我会收到错误消息。我需要它才能在几台不同的机器上工作。
我得到的错误是:“错误:[Errno 99] 无法分配请求的地址”
我的代码失败的那一行是:
d = Pyro4.Daemon(host = NS_HOST, port = 6193)
其中 NS_HOST 是运行名称服务器等的主机的名称,6193 是 ns 使用的端口。出于某种原因,除了本地主机之外,它似乎在任何地方都不起作用。我需要做一些不同的事情吗? 我知道我可以连接到此主机的 ns,因为我没有收到以下错误:
Pyro4.locateNS(host = NS_HOST, port = 6193)
上面的行目前不在我的代码中(我只是用它来检查我没有遇到错误的主机名、防火墙等问题)但我想知道是否有一种方法可以将它与 Pyro4 结合起来.Daemon() 让代码工作 - 有什么想法吗?
我使用的是 python 2.7。
感谢您的帮助!
【问题讨论】:
标签: python python-2.7 daemon nameservers pyro4