RPC 的 Python 实现 ToRPC
- 授权协议: MIT
- 开发语言: Python
- 操作系统: 跨平台
- 软件首页: https://github.com/yoki123/torpc
- 软件文档: https://github.com/yoki123/torpc/blob/master/README-zh.rst
软件介绍
ToRPC(Tornado + RPC) 是一个的基于 Tornado IOLoop 的异步TCP和双向通信的RPC的Python实现。ToRPC非常轻量级,性能优秀(尤其是在PyPy环境下)。
注意:目前为止,ToRPC只在CPython 2.7+和PyPy 2.5+上测试过。
示例
RPC 服务器
from tornado import ioloop
from torpc import RPCServer
server = RPCServer(('127.0.0.1', 5000))
@server.service.register()
def echo(x):
return x
server.start()
ioloop.IOLoop.instance().start()
RPC 客户端
from tornado import ioloop, gen
from torpc import RPCClient
def result_callback(f):
print(f.result())
@gen.coroutine
def using_gen_style():
want_to_say = 'way to explore'
ret = yield rc.call('echo', want_to_say)
assert ret == want_to_say
print('gen_style complete')
rc = RPCClient(('127.0.0.1', 5000))
rc.call('echo', 'hello world', callback=result_callback)
future = rc.call('echo', 'code for fun')
future.add_done_callback(result_callback)
using_gen_style()
ioloop.IOLoop.instance().start()
更多请浏览examples。
Performance
系统: CentOS 6.6 x64
处理器: Intel i5-3470 3.20GHz
内存: 8 GB 1600 MHz DDR3
Python: 2.7.10 PyPy: 4.0.0
| environment | call coroutine(qps) | callback(qps) |
|---|---|---|
| Python(with timeout) | 9842 | 11614 |
| Python | 13192 | 16638 |
| PyPy(with timeout) | 40486 | 41225 |
| PyPy | 53252 | 59151 |
| PyPy(unix domain) | 67100 | 74362 |
这个基准测试中,Python循环10w次,PyPy循环50w次,然后运行3次, 结果在gist:benchmark_result.txt
跨境电商——阿里巴巴速卖通宝典
速卖通大学 编著 / 电子工业出版社 / 2015-1 / 69.00元
跨境电商作为中国电子商务发展的最新趋势,受到了全社会越来越多的重视,大量中国卖家借助阿里巴巴速卖通平台,将产品直接售卖到全球的消费者手中,通过这条短得不能再短的交易链,获得了丰厚的回报。 但同时,跨境电商这一贸易形式,对卖家的综合素质要求比较高:卖家要对海外市场比较熟悉,对跨境物流有所把握,能够用外语进行产品介绍和客户交流,通过跨境结算拿到货款……诸如此类的门槛,让不少新卖家心生畏难,而所有......一起来看看 《跨境电商——阿里巴巴速卖通宝典》 这本书的介绍吧!
