7

According to this Wikipedia entry:

"Protocol Buffers is very similar to Facebook’s Thrift protocol, except it does not include a concrete RPC stack to use for defined services. Since Protocol Buffers was open sourced, a number of RPC stacks have emerged to fill this gap."

However, there are no examples of RPC stacks cited. Can anyone suggest a Java-based implementation of an RPC stack?

Adamski
  • 54,009
  • 15
  • 113
  • 152
  • I am really not very sure, but recently I had come across this one from ZeroC http://www.zeroc.com/labs/protobuf/download.html – shivaspk Sep 17 '09 at 09:41
  • 2
    Have a look at the following solution which adds an RPC implementation specifically to ProtocolBuffers: http://code.google.com/p/protobuf-rpc-pro/ – Tobias N. Sasse Sep 01 '12 at 14:53

2 Answers2

9

If you want Java-based RPC stack, it's RMI. However, it doesn't work well cross platform.

I've been using ProtoBuf to do RPC. You can pretty much simulate an RPC stack by wrapping a protobuf message inside another protobuf, which defines the services or calls. Find my answer to this question for details,

Google Protocol Buffers and HTTP

Thrift looks like a very good alternative if you want support more platforms like PHP, Ruby, C# etc. However, it looks very complex to me compared to ProtoBuf.

Community
  • 1
  • 1
ZZ Coder
  • 74,484
  • 29
  • 137
  • 169
4

Google has open sourced their RPC framework gRPC, which uses Protocol Buffers to define the service and messages. gRPC is cross-platform with support for C, C++, C#, Java, Go, Node.js, Python, Ruby, Objective-C and PHP.

gRPC is based on the HTTP/2 standard that enables new capabilities such as bidirectional streaming, flow control, header compression and multiplexed connections.

coder.chenzhi
  • 171
  • 1
  • 11