RPC

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()
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。

posted @ 2014-06-25 10:40  夜半弯  阅读(150)  评论(0编辑  收藏  举报