码迷,mamicode.com
首页 > 其他好文 > 详细

Messagepack原理

时间:2018-01-21 12:39:25      阅读:157      评论:0      收藏:0      [点我收藏+]

标签:交换   标准   进阶   div   message   描述   开始   理论知识   需要   

  什么是Messagepack?

  用官方的话说:MessagePack是一种高效的二进制序列化格式。它允许您像JSON一样在多个语言之间交换数据。但是,它更快并且更小。小整数被编码为一个字节,和典型的短字符串只需要除了字符串本身的一个额外字节。

  笔者认为用一句可总结:结构和JSON一样,比JSON更小更快!

  相信对于初学者来说:如何快速将Messagepack引入项目,快速集成,是我们当前必须面临的问题。博文手把手教你,后续提供JAVA版的发送和接收功能(Messagepack的序列化与反序列化),说不多说,请跟进博主的脚步,学习messagepack的理论知识。

  


  基于官方解释:JSON为什么会变小了?

       技术分享图片

  我们都知道上文json总长度占27个字符,这属于JSON的标准格式,心细的你发现:引号(")、布尔型等在JSON中出现了多次,能否将多次出现的长字符用一些简易的短字符去描述,这就是Messagepack底层的理论支持。

  采用Messagepack转换后的格式如下,我们将长JSON再次减短,节省网络传输带宽,提高传输效率和存储效率。

  技术分享图片

  解释为:82开始代表有2两个json字段;a7代表后续紧跟7个字符是json字段名;c3代表值为true;a6代表后续有6个字符;0代表值为零。

       PS:不考虑复杂格式,解析办法为将收到到的字符按照占位分成五个,即可实现json的还原。一个很短JSON减少了9个字符,这就是messagepack的强大之处。


 

       后续我将提供messagepack的实例代码和进阶,请关注qq群:431046942 或 431156111,包含更多的实例代码。

       转载请注明出去,请在显眼的地方标注本文链接,谢谢!

Messagepack原理

标签:交换   标准   进阶   div   message   描述   开始   理论知识   需要   

原文地址:https://www.cnblogs.com/cnxieyang/p/8323698.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!