【发布时间】:2010-11-12 21:50:35
【问题描述】:
我想做的就是通过套接字进行一些 RPC 调用。我有一台运行 jython 2.5 的后端服务器。我需要从在 CPython 上运行 Django 的前端服务器进行一些调用。我一直在努力争取任何形式的 IPC。
我尝试过的事情清单:
- Apache Thrift 没有任何实际版本,只有快照。我想使用一些稳定的东西。
- JSON-RPC 很有趣,它应该能够在套接字上运行,但实际上大多数 implementations 似乎只能在 HTTP 上运行。 HTTP 开销正是我想要避免的。
- Protocol Buffers 实际上只是一个序列化协议。从我收集的内容来看,protobuf 为 RPC 提供了接口生成,但它只是接口。实际上编写所有连接代码取决于用户。如果我将无法使用套接字,我将只使用 JSON 进行序列化。更简单,faster。
- Pyro 无法将 Jython 作为服务器正常工作。某种套接字超时问题。我已向邮件列表发送了一条消息。
- pysage 是的消息传递!只有它需要 python 2.6 或处理模块(已编译扩展)。 Jython 是 2.5 版,不允许编译扩展。
- Candygram 是 pysage 的一个有趣的替代品,但据我所知,它没有维护。我什至没有用 Jython 尝试过。有什么经验吗?
- Twisted Perspective Broker Twisted 不适用于 Jython。
我知道用 XML-RPC 做这件事会很容易,这让我更加暴躁。我想避免 HTTP 的开销,但同时我真的不想用套接字来实现我自己的协议。如果我这样做,我会做错。
有什么想法吗?我可能会哭大约 20 分钟,然后就使用 XML-RPC。
【问题讨论】:
-
顺便说一句,我刚刚找到了我的问题的解决方案:bert-rpc.org
标签: python ipc jython twisted rpc