二进制数据格式MessagePack:比JSON更快更轻巧
2019独角兽企业重金招聘Python工程师标准>>>
MessagePack是一种新的基于二进制的对象序列化类库。它可以像JSON那样,在许多种语言之间交换结构对象(比如移动app项目);但是它比JSON更快速也更轻巧。
MessagePack简称msgpack,官方网站是 http://msgpack.org/ ,代码可以在github上查看 https://github.com/msgpack。
官方介绍是“Extremely efficient object serialization library for cross-language communication.It’s like JSON, but very fast and small.”,是一种跨语言的基于二进制的数据格式。从官方的介绍来看,它能够比google protocol buffers快4倍,比json快10倍多。
msgpack支持包括PHP在内的以下语言,非常丰富:
Ruby
Python
Perl
C/C++
Java
Scala
PHP
Lua
JavaScript
Node.js
Haskell
C#
Objective-C
Erlang
D
OCaml
Go
LabVIEW
Smalltalk
PHP安装mskpack可以通过PECL扩展方式安装。
wget http://pecl.php.net/get/msgpack-0.5.5.tgz
tar zxf msgpack-0.5.5.tgz
cd msgpack-0.5.5
/usr/local/hx/php/bin/phpize
./configure --with-php-config=/usr/local/hx/php/bin/php-config
make && make install
然后再到php.ini添加
extension=msgpack.so
使用PHP操作:
$data = array(0=>1,1=>2,2=>3);
$msg = msgpack_pack($data);
$data = msgpack_unpack($msg);
在php下,msgpack对数组的支持非常棒,几乎和json差不多。
与JSON的比较
优势:
1.序列化和反序列化所需要的时间少。通过30000条的记录来测试,msgpack序列化的时间比使用jason来序列化JSON的时间要少三分之一;而反序列化的时间则要少一半。
2.生成的文件体积小。同样也是基于30000条记录来测试,msgpack序列化后生成的二进制文件比用jason序列化出来的时间要少一半。
转载于:https://my.oschina.net/chinaearl/blog/112590
二进制数据格式MessagePack:比JSON更快更轻巧相关推荐
- 更快更安全,HTTPS 优化总结
在网站升级到 HTTPS 之后,我们还可以有很多玩意可以折腾,优化 HTTPS,让它更快更安全.这里是一篇 HTTPS 优化的总结,也包含问题的解决方法,不过不仅仅包括 HTTPS 的优化,也包含 H ...
- 使用现场总线更快更远
使用现场总线更快更远 Going faster and further with Fieldbus PROCENTEC等行业专家表示,基于RS-485的现场总线技术(PROFIBUS®)和工业以太网( ...
- 实用的it知识学习_怎样能更快更好的学习好书法?分享一些比较实用的理论知识...
如何能更快更高效的学习书法?首先了解一些书法理论知识是很有必要的!它能让你在学习书法的过程中不至于迷茫 !能助你更快学好书法! 一.书论在实践中产生 我们大部分人都觉得学习书法可以没有理论,但不可无技 ...
- msdn安装后怎么用_Win10不好用?安装官方版精简Win10后,运行比win7更快更流畅
尽管不想承认,确实是大白菜的电脑配置有点旧了,导致从win7升级最新版win10系统后,电脑是100个不好用!!! 虽然,非常怀念使用win7系统时,那种操作的流畅度,那种运行的速度~ 但是,大白菜和 ...
- IEEE ICIP 2019 | 更快更好的联邦学习:一种特征融合方法
目录 前言 Abstract 1.Introduction 2.Related Work 3.Methods 3.1 Feature Fusion Modules 3.1.1 Conv operato ...
- YOLOv5全面解析教程③:更快更好的边界框回归损失
作者|Fengwen.BBuf 边界框回归是目标检测的关键步骤,在现有方法中,虽然被广泛用于边界框回归,但它不是针对评估指标量身定制的,即 Intersection over Union (IoU). ...
- 网吧无盘服务器为什么玩地下城和穿越火线卡其它游戏不卡,为什么网吧的电脑配置更低,玩游戏却更快更爽?...
原标题:为什么网吧的电脑配置更低,玩游戏却更快更爽? 随着互联网时代的到来,现在家家户户都有一台或几台电脑几乎成为常态,有人认为网吧行业可能会因此受到冲击,但是相反我国的营业性网吧不仅没有减少,还继续 ...
- 极智Paper | YOLOv7 更高 更快 更强
欢迎关注我的公众号 [极智视界],获取我的更多笔记分享 大家好,我是极智视界,本文解读一下 更高.更快.更强的 YOLOv7:Trainable bag-of-freebies sets ne ...
- 与阿里云整个生态体系共同成长,更快更好的为房地产行业客户提供高价值的服务。...
免费开通大数据服务:https://www.aliyun.com/product/odps "最早是新业务要做,但是买服务器来不及,管理员没到位,而且新业务的成本很高,是否能成功也是未知,因 ...
- 与阿里云整个生态体系共同成长,更快更好的为房地产行业客户提供高价值的服务。
免费开通大数据服务:https://www.aliyun.com/product/odpsyu "最早是新业务要做,但是买服务器来不及,管理员没到位,而且新业务的成本很高,是否能成功也是未知 ...
最新文章
- bzoj3600 没有人的算术
- Python Module_pdb_DEBUG 方法
- 读书笔记 effective c++ Item 49 理解new-handler的行为
- 驱动人生服务器版本_电脑驱动怎么装?电脑刚装系统怎么装驱动?
- 以太坊区块链 JSON-RPC
- SQL强化(二) 在Oracle 中写代码
- 虚拟机搭建Hadoop集群学习笔记(1)
- 算法与数据结构(一)-导学
- 《善用佳软:高效能人士的软件应用之道》一2.2 流程图绘制软件:免费的Visio替代品...
- java之随机生成名字
- Java基础:第5-6章(重点)
- 使用Spark ML进行数据分析
- 计算机里的及格率和有优秀率怎么算,Excel中怎么用函数计算成绩的及格率和优秀率?_excle优秀率及格率...
- 苹果账号续费以及过期更新问题
- 数据库管理系统的层次结构--物理组织
- sqlitespy怎么打开.db数据库文件
- 日常使用的共享文件协议服务---FTP、NFS、SMB
- ---- 招聘之数据结构 ----
- 三个媒体发布平台大数据总结,为你分析爆文写作方向
- java操作es之各种高级查询