【发布时间】:2014-09-15 12:54:32
【问题描述】:
有什么方法可以一次从 xmlrpc 客户端多次调用不同的 xmlrpc 服务器。
我的服务器代码如下所示:(我将在两台机器上运行此代码,server1 和 server2)
class TestMethods(object):
def printHello(self):
while(1):
time.sleep(10)
print "HELLO FROM SERVER"
return True
class ServerThread(threading.Thread):
def __init__(self):
threading.Thread.__init__(self)
self.server = SimpleXMLRPCServer(("x.x.x.x", 8000))
self.server.register_instance(TestMethods())
def run(self):
self.server.serve_forever()
server = ServerThread()
server.start()
我的客户端代码如下所示:
import xmlrpclib
client1 = xmlrpclib.ServerProxy("http://x.x.x.x:8080") # registering with server 1
client2 = xmlrpclib.ServerProxy("http:/x.x.x.x:8080") # registering with server 2
ret1 = client1.printHello()
ret2 = client2.printHello()
现在,在第 10 秒,我将收到来自 server1 的响应,在第 20 秒,我将收到来自 server2 的响应,很遗憾这不是我想要的。 我正在尝试一次调用两台机器,以便一次从这两台机器获得响应。
请帮帮我,提前谢谢。
【问题讨论】:
标签: python xml-rpc python-multithreading xmlrpclib simplexmlrpcserver