• Messagepack原理


      什么是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,包含更多的实例代码。

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

  • 相关阅读:
    计算机视觉
    深度学习2
    pytorch
    Django笔记
    深度学习
    numpy&pandas
    信息安全与密码技术
    Win10 alt+f4默认关机修改
    (转)Spring Boot 解决跨域问题的 3 种方案
    用 alibaba 的 fastjson 将 list 或 map 转为 json 字符串
  • 原文地址:https://www.cnblogs.com/cnxieyang/p/8323698.html
Copyright © 2020-2023  润新知