ToRPC RPC 的 Python 实现开源项目

我要开发同款
匿名用户2015年11月16日
138阅读

技术信息

开源地址
https://github.com/yoki123/torpc
授权协议
MIT

作品详情

ToRPC(Torado+RPC)是一个的基于ToradoIOLoop的异步TCP和双向通信的RPC的Pytho实现。ToRPC非常轻量级,性能优秀(尤其是在PyPy环境下)。

注意:目前为止,ToRPC只在CPytho2.7+和PyPy2.5+上测试过。

示例

RPC服务器

fromtoradoimportioloopfromtorpcimportRPCServerserver=RPCServer(('127.0.0.1',5000))@server.service.register()defecho(x):returxserver.start()ioloop.IOLoop.istace().start()

RPC客户端

fromtoradoimportioloop,gefromtorpcimportRPCClietdefresult_callback(f):prit(f.result())@ge.coroutiedefusig_ge_style():wat_to_say='waytoexplore'ret=yieldrc.call('echo',wat_to_say)assertret==wat_to_sayprit('ge_stylecomplete')rc=RPCCliet(('127.0.0.1',5000))rc.call('echo','helloworld',callback=result_callback)future=rc.call('echo','codeforfu')future.add_doe_callback(result_callback)usig_ge_style()ioloop.IOLoop.istace().start()

更多请浏览examples。

Performace

系统:CetOS6.6x64

处理器:Iteli5-34703.20GHz

内存:8GB1600MHzDDR3

Pytho:2.7.10PyPy:4.0.0

evirometcallcoroutie(qps)callback(qps)Pytho(withtimeout)984211614Pytho1319216638PyPy(withtimeout)4048641225PyPy5325259151PyPy(uixdomai)6710074362

这个基准测试中,Pytho循环10w次,PyPy循环50w次,然后运行3次,结果在gist:bechmark_result.txt

功能介绍

ToRPC(Tornado + RPC) 是一个的基于 Tornado IOLoop 的异步TCP和双向通信的RPC的Python实现。ToRPC非常轻量级,性能优秀(尤其是在PyPy环境下)。...

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论