Hacker Timesnew | past | comments | ask | show | jobs | submitlogin

I used MessagePack in a real-time streaming app. It was smaller than Protobuf (and about as fast in .net). In fact, if you are a .net dev and use the popular SignalR it can use MessagePack for real-time browser binary messaging. I highly recommend it. But, it is not a direct replacement for JSON as it's not a human readable or accessible without libraries.


I've also used MessagePack on .NET, but as a serialisation format for use with a message queue - I don't recall the numbers off hand, but it's something like an order of magnitude to serialise and deserialise than JSON, and resulted in a lot less allocations too.

It supports compression too. Even if the resulting serialised size isn't always smaller than compressed JSON, from a performance standpoint it's a lot better.


It might be better than text formats, but it still encodes most things as variable-size and this is not particularly machine-friendly. A format with separate metadata and fixed length encodings for most of the things (eg numbers) would be much more efficient to serialize / deserialize.


> resulted in a lot less allocations too

Especially if you use the MessagePack-CSharp library. That dude knows his high-perf .Net.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: