RPC frameworks available?
Asked Answered
W

3

10

I am looking to use a RPC framework for internal use. The framework has to be cross language. I am exploring Apache Thrift right now. Google protocol Buffers does not provide RPC capabilities exactly. What are the choices I have got apart from Thrift. (my servers will be primarily Java and the clients will be Java, Python, PHP).

Walloper answered 2/9, 2010 at 7:18 Comment(3)
After Exploring a bit, and looking at all the options available along with the Documentation, I prefer Thrift. Waiting for Message Pack to be more matureWalloper
Curious tho what exactly are you looking with RPC over very simple request/response handling ("REST"); for example simple HTTP+JSON combination works rather well, convenient, performance, simple. So what would a framework like thrift, PB, Hessian or others buy you?Inga
Thrift is definitely faster and lighter than the HTTP/JSON approach. More requests can be served using Thrift than HTTP+JSON/XML. So Thrift is a good choice for internal services. REST approach may be best for external APIsWalloper
W
4

There is also MessagePack which claims to be faster than Protocol Buffers and have more features than Thrift.

Walloper answered 2/9, 2010 at 9:15 Comment(1)
To be honest, performace differences between PB, Thrift and alternatives seldom matter a lot -- they are all fast enough for most uses.Inga
I
2

I would look at REST as a first option because it is ubiquitous and no-nonsense.

If performance and representation really needs to be compact, I have heard good things about Apache AVRO and my fingers are twitching to try it out in anger.

Imposition answered 2/9, 2010 at 7:23 Comment(4)
AVRO seems interesting. Well REST vs RPC debate is over and I am looking for RPC alternativesWalloper
Well in first look, AVRO does not seem to support PHP out of the box. That might be an issue for us.Walloper
I didn't find a RPC implementation in the Avro C++ source, did I miss anything?Iridaceous
From issues.apache.org/jira/browse/AVRO-777 it seems that at least C support is well underway.Imposition
W
1

There also seems to be ICE: which uses Google Protocol Buffers for RPC.

Walloper answered 2/9, 2010 at 7:45 Comment(1)
To be precise, it doesn't use them, but can emulate them.Tasman

© 2022 - 2024 — McMap. All rights reserved.