根据维基百科条目:

“协议缓冲区与Facebook的Thrift协议非常相似,不同之处在于它不包含用于定义服务的具体RPC堆栈。由于协议缓冲区是开源的,因此出现了许多RPC堆栈以填补这一空白。“

但是,没有引用RPC堆栈的示例。任何人都可以建议基于Java的RPC堆栈实现吗?

有帮助吗?

解决方案

如果您需要基于Java的RPC堆栈,则需要 RMI 。但是,它不能很好地跨平台工作。

我一直在使用ProtoBuf来做RPC。您可以通过将protobuf消息包装在另一个定义服务或调用的protobuf中来模拟RPC堆栈。有关详细信息,请查找此问题的答案,

Google协议缓冲区和HTTP

如果你想要支持更多平台,如PHP,Ruby,C#等,Thrift看起来是一个非常好的选择。但是,与ProtoBuf相比,它看起来非常复杂。

其他提示

Google已开放其RPC框架 gRPC ,该框架使用协议缓冲区来定义服务和消息。 gRPC是跨平台的,支持C,C ++,C#,Java,Go,Node.js,Python,Ruby,Objective-C和PHP。

gRPC基于HTTP / 2标准,支持新功能,如双向流,流控制,报头压缩和多路复用连接。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top