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