Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

MessagePack: fast cross-platform serializer and RPC - please share experience

Looking for some fast, simple and stable RPC library I stumbled upon MessagePack project which seems to be very good. It is also under active development.

If you used it in any way, could you please share your experience?

P.S. I think this question should be community wiki

like image 479
Vladislav Rastrusny Avatar asked Mar 29 '11 07:03

Vladislav Rastrusny


People also ask

What is MessagePack used for?

MessagePack is a fast and compact binary serialization format. It's useful when performance and bandwidth are a concern because it creates smaller messages than JSON. The binary messages are unreadable when looking at network traces and logs unless the bytes are passed through a MessagePack parser.

What is MessagePack DLL?

MessagePack is an efficient binary serialization format. It lets you exchange data among multiple languages like JSON. But it's faster and smaller. Small integers are encoded into a single byte, and typical short strings require only one extra byte in addition to the strings themselves.


2 Answers

Well, after some time I found that MessagePack is not well-documented (there was even non-working tutorial in Wiki for Java), there are like 7 outstanding bugs several months old without any replies. Code even is not JavaDoc'ed so that you can take and learn it quickly...

But it seems developer activity there is quite high despite of some outstanding pull requests from the community, that are several months old.

So, well, if GPL suits you, go for ICE. If not... don't know yet. Still looking.

like image 129
Vladislav Rastrusny Avatar answered Oct 17 '22 22:10

Vladislav Rastrusny


I'm also looking into a fast, cross-platform, cross-language, non-GPL-licensed RPC library.

From looking at the C++ source of MessagePack it seems that it doesn't work on Win32 though, which is a requirement for myself.

Except for that that single item it is on top of my list of serialization/RPC libraries.

  • http://msgpack.org/ - Win32 missing
  • http://avro.apache.org/
  • http://thrift.apache.org/ - Win32 missing
  • http://bert-rpc.org/
  • http://www.xmlrpc.com/
  • http://json-rpc.org/ - GPL license
  • http://code.google.com/p/protobuf/ - RPC missing
like image 34
dalle Avatar answered Oct 17 '22 22:10

dalle