在Python中执行RPC的当前选择是什么?

时间:2009-12-10 10:01:04

标签: python rpc

实际上,我已经完成了与Pyro和RPyC的一些工作,但是有比这两个更多的RPC实现。我们可以列出它们吗?

基于Python的原生协议:

具有大量底层协议的RPC框架:

基于JSON-RPC的框架:

SOAP:

基于XML-RPC的框架:

其他:

8 个答案:

答案 0 :(得分:36)

XML-RPC是Python标准库的一部分:

答案 1 :(得分:15)

Apache Thrift是Facebook开发的跨语言RPC选项。通过套接字工作,函数签名在文本文件中以与语言无关的方式定义。

答案 2 :(得分:6)

由于我问过这个问题,我已经开始使用python-symmetric-jsonrpc了。它非常好,可以在python和非python软件之间使用,并遵循JSON-RPC标准。但它缺少一些例子。

答案 3 :(得分:5)

你可以尝试Ladon。它一次提供多个Web服务器协议,因此您可以在客户端提供更多灵活性。

http://pypi.python.org/pypi/ladon

答案 4 :(得分:2)

有一些尝试让SOAP与python一起工作,但我没有对它进行过多次测试,所以我不能说它是否好。

SOAPy就是一个例子。

答案 5 :(得分:2)

我们正在开发Versile Python(VPy),一个新的ORB / RPC框架的python 2.6+和3.x的实现。用于审查和测试的功能性AGPL开发版本为available。 VPy具有类似于PyRo和RPyC的本机python功能,通过一般的本机对象层(code example)。该产品专为Versile Platform的实现而设计,用于独立于平台的远程对象交互。

完全披露:我为开发VPy的公司工作。

答案 6 :(得分:1)

也许是实现SOAP的ZSI。我使用了存根生成器,它工作正常。我遇到的唯一问题是通过HTTPS进行SOAP。

答案 7 :(得分:0)

你错过了omniORB。这是一个非常完整的CORBA实现,因此您也可以使用它与其他支持CORBA的语言进行通信。