RPC属于函数级别的远程调用,它通常是通过HTTP传输数据,数据形式有XML、JSON、序列化数据等。在此,用python做一个xml-rpc的示例。
首先给出服务器端server.py:
from SimpleXMLRPCServer import SimpleXMLRPCServer
def test(x, y):
return x * y
if __name__ == '__main__':
server = SimpleXMLRPCServer(('127.0.0.1', 8080))
server.register_function(test)
server.serve_forever()
def test(x, y):
return x * y
if __name__ == '__main__':
server = SimpleXMLRPCServer(('127.0.0.1', 8080))
server.register_function(test)
server.serve_forever()
server是一个绑定了本地8080端口的服务器对象,register_function()方法将函数test注册到server中。serve_forever()启动服务器。
下面再给出一个客户端client.py:
from xmlrpclib import ServerProxy
if __name__ == '__main__':
server =
ServerProxy("http://127.0.0.1:8080")
print
server.test(3,7)
现在,先运行server.py,再运行client.py,client.py所在的console会输出结果21。