快速的Java/Python/C++进程间通信

1 投票
1 回答
1659 浏览
提问于 2025-04-15 19:58

我注意到这个讨论串:Fastish Python/Jython IPC,我有类似的问题,不过用的是不同的语言。

我现在有一个Java的前端和一个C++的后端,我在考虑不久的将来把它们重写成Python。请问,什么样的进程间通信(IPC)方式最好?我比较喜欢用socket而不是HTTP,因为我想避免HTTP带来的额外负担。而且,XML-RPC是我想要避免的一个例子!

有没有什么库可以处理跨平台的远程过程调用(RPC),比如JSON或XML之类的?

我在这个领域还是个新手,提前谢谢大家!

1 个回答

2

对于C++的后端,你可以使用xmlrpc++(这是一个LGPL许可证的库)——我自己也打算用这个。它的代码写得很干净,所以如果你需要的话,可以很方便地进行修改。

至于Java或Python的前端,你可以使用Apache XML-RPC(我对这个不太了解)或者Python的xmlrpclib(这个非常好用)。

XML-RPC应该是跨平台的。我试过把xmlrpc++当作服务器,xmlrpclib当作客户端,结果运行得很好,即使在处理错误的时候,也能正确地把错误信息传给客户端。

撰写回答