目前在Python中进行RPC的选择是什么?[已关闭]
目前在Python中进行RPC的选择是什么?[已关闭]
实际上,我已经使用过Pyro和RPyC进行了一些工作,但除了这两个之外,还有更多的RPC实现。我们能不能列一下它们?
基于原生Python的协议:
- [PyRo4 (Python Remote Objects)](http://pythonhosted.org/Pyro4/)
- [RPyC (Remote Python Call)](http://rpyc.wikidot.com)
- [Circuits](https://bitbucket.org/prologic/circuits/)
具有许多底层协议的RPC框架:
- [Spyne](http://spyne.io)(参见[lightning talk](http://www.youtube.com/watch?v=N4zdWLuSbV0#t=21m58))
基于JSON-RPC的框架:
- [python-symmetric-jsonrpc](http://github.com/niligulmohar/python-symmetric-jsonrpc)
- [rpcbd](http://www.openminddev.net/rpcbd/python/)
- [Ladon](http://pypi.python.org/pypi/ladon)
- [jsonrpc2-zeromq-python](https://github.com/wiltd/jsonrpc2-zeromq-python)
SOAP:
- [ZSI](http://pypi.python.org/pypi/ZSI/)
- [SOAPpy](http://pypi.python.org/pypi/SOAPpy)
- [Ladon](http://pypi.python.org/pypi/ladon)
- [Spyne](http://arskom.github.com/rpclib)
基于XML-RPC的框架:
- XMLRPC,使用标准库中的[xmlrpclib](http://docs.python.org/library/xmlrpclib.html)和[SimpleXMLRPCServer](http://docs.python.org/library/simplexmlrpcserver.html)模块。
其他:
- [WAMP (RPC + PubSub, JSON + MsgPack)](http://wamp.ws/spec)
- [Twisted Spread](http://twistedmatrix.com/trac/)
- [ZMQRPC (ZeroMQ and BSON based)](https://github.com/geoffwatts/zmqrpc)
- [VPy (Versile Python)](https://versile.com/products/vpy/) - AGPLv3
- [zerorpc (Python or Node.js, msgpack + ZeroMQ)](http://www.zerorpc.io)
- [gRPC](https://grpc.io/docs/languages/python/)