什么是在Python中执行RPC的当前select?
实际上,我已经和Pyro和RPyC做了一些工作,但是比这两者有更多的RPC实现。 我们可以列出他们的名单吗?
本机基于Python的协议:
- PyRo4(Python远程对象)
- RPyC(远程Python调用)
- 电路
有很多底层协议的RPC框架:
- Spyne (见雷电说话 )
基于JSON-RPC的框架:
- 蟒对称-jsonrpc
- rpcbd
- 拉冬
- jsonrpc2-zeromq,python
肥皂:
- ZSI
- SOAPpy的
- 拉冬
- Spyne
基于XML-RPC的框架:
- XMLRPC,使用标准库中的xmlrpclib和SimpleXMLRPCServer模块。
其他:
- WAMP(RPC + PubSub,JSON + MsgPack)
- 扭曲的传播
- ZMQRPC(基于ZeroMQ和BSON)
- VPy(Versile Python) – AGPLv3
- zerorpc(Python或Node.js,msgpack + ZeroMQ)
XML-RPC是Python标准库的一部分:
- Python 2: xmlrpclib和SimpleXMLRPCServer
- Python 3: xmlrpc ( 客户端和服务器 )
Apache Thrift是在Facebook上开发的跨语言RPC选项。 在套接字上工作,function签名是以独立于语言的方式在文本文件中定义的。
由于我问过这个问题,我已经开始使用python-symmetric-jsonrpc了 。 它非常好,可以在Python和非Python软件之间使用,并遵循JSON-RPC标准。 但是它缺less一些例子。
你可以试试Ladon。 它一次提供多个Web服务器协议,因此您可以在客户端提供更多的灵活性。
有一些尝试使python的SOAP工作,但我没有太多的testing,所以我不能说,如果它是好的或不。
SOAPy就是一个例子。
我们正在开发Versile Python ( VPy ),一个新的ORB / RPC框架的Python 2.6+和3.x的实现。 functionAGPL dev版本供审查和testing可用 。 VPy具有类似于PyRo和RPyC的本地pythonfunction,通过一般本地对象层( 代码示例 )。 该产品devise用于实现Versile Platform的平台无关的远程对象交互。
充分披露:我为公司开发VPy工作。
也许是实现SOAP的ZSI。 我使用存根生成器,它工作正常。 我遇到的唯一问题是关于通过HTTPS进行SOAP。
你错过了omniORB 。 这是一个相当完整的CORBA实现,所以你也可以用它来和其他支持CORBA的语言进行交stream。