jsonsmart,msgpack,protocalbuffer谁更强?

最近在做一个ANDROID的应用,和服务器进行交互的时候就考虑到了对象序列化的问题。

翻遍网络,最后选出三个种子选手:

 jsonsmart  json格式中的绝对王者 速度快,信息少

msgpack  二进制序列化的怪杰,号称比protocal buffer快四倍,比json快10倍

protocal GOOGLE出品,号称比XML快百倍

 

对着三个东西同样条件下测试了一下,主要是测试谁的包最小,因为和处理速度相比,网络传输更加敏感。

结论:

如果你的数据包以二进制数据为主,那么王者是msgpack.

如果你的数据包以字符串为主,那么王者是jsonsmart!!!!

msgpack和protocal buffer在以字符串为主的数据包中,表现完全相同。

具体的说,JSONsmart的数据只相当于其他两个的68.5%。也就是说领先32%。

我想这个结果可能和很多人想的不太一样,大家可以自己去测试吧。

也不难看出我的倾向是选择JSONsmart 了,因为我们的的数据还是主要是以字符串为主的。我想绝大部分的ANDROID应用系统都应该是以字符串为主的。

不过呢,要说编程最简单,还是msgpack 了。解析对象化 jsonsmart做的很差!这点让人郁闷,怎么就不能十全十美呢!不过2.0貌似有改善。

编程最麻烦是  protocal buffer!我对GOOGLE的程序设计水平一直不太欣赏。这次又给我了一点加强。

因此 mspack和protocal buffer 水准比较接近。但是二进制数据的综合性能还是 msgpack胜出。

你可能感兴趣的:(网络)