python-RPC框架

一 Python中RPC框架

自带的:SimpleXMLRPCServer(数据包大,速度慢)

第三方:ZeroRPC(底层使用ZeroMQ和MessagePack,速度快,响应时间短,并发高),grpc(谷歌推出支持夸语言)

 

"""
    Zerorpc的使用
"""
#服务端
import zerorpc

class RPCServer:

    def __init__(self):
        super().__init__()
        self.send_data = "hello world"
        self.recv_data = None

    def getObj(self):
        return self.send_data

    def sendObj(self,data):
        self.recv_data = data

#注册rpc调用函数
s = zerorpc.Server(RPCServer)
s.bind("tcp://0.0.0.0:4243")
s.run()

#客户端
import time
def zerorpc_client():
    print('zerorpc client')
    c = zerorpc.Client()
    c.connect('tcp://127.0.0.1:4243')
    data = 'lqz nb'
    start = time.clock()
    for i in range(500):
        a=c.getObj()
        print(a)
    for i in range(500):
        c.sendObj(data)

    print('total time %s' % (time.clock() - start))


if __name__ == '__main__':
    zerorpc_client()

 

posted @ 2020-10-14 11:00  coding天荒地老  阅读(1122)  评论(0编辑  收藏  举报