php数据序列化测试实例详解


Posted in PHP onAugust 12, 2017

php数据序列化测试实例详解

测试代码

$msg = ['test'=>23];
$start = microtime(true); 
for($i=0;$i<100000;$i++){
  $packMsg = msgpack_pack($msg);
}
echo 'pack len:'.strlen($packMsg)."\r\n";
$end = microtime(true);
echo 'run time:'.($end-$start).'s'."\r\n"; 
echo 'memory usage:'.(memory_get_usage()/1024)."KB\r\n";
/*
$start = microtime(true); 
for($i=0;$i<100000;$i++){
  $jsonMsg = json_encode($msg);
}
echo 'json len:'.strlen($jsonMsg)."\r\n";
$end = microtime(true); 
echo 'run time:'.($end-$start).'s'."\r\n"; 
echo 'memory usage:'.(memory_get_usage()/1024)."KB\r\n";

$start = microtime(true); 
for($i=0;$i<100000;$i++){
  $packMsg = serialize($msg);
}
echo 'php len:'.strlen($packMsg)."\r\n";
$end = microtime(true);
echo 'run time:'.($end-$start)."s\r\n";
echo 'memory usage:'.(memory_get_usage()/1024)."KB\r\n";*/

执行结果

pack len:7
run time:0.024219989776611s
memory usage:354.4765625KB
json len:11
run time:0.010890007019043s
memory usage:354.1796875KB
php len:22
run time:0.010586977005005s
memory usage:353.8828125KB

分析评论

网上查阅的基本结果都是(估计是php7以前的版本)

运行速度 serialize<json<msgpack
长度  serialize>json>msgpack
内存消耗 serialize<json<msgpack //不过近乎一致

在php7里运行,得出的结果如下

运行速度 serialize<msgpack<json  //这里出现了变化
长度  serialize>json>msgpack
内存消耗 serialize<json<msgpack //不过近乎一致

以上就是php数据序列化测试的讲解,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

PHP 相关文章推荐
定制404错误页面,并发信给管理员的程序
Oct 09 PHP
PHP初学者最感迷茫的问题小结
Mar 27 PHP
php与mysql建立连接并执行SQL语句的代码
Jul 04 PHP
PHP句法规则详解 入门学习
Nov 09 PHP
PHP提取字符串中的图片地址[正则表达式]
Nov 12 PHP
PHP循环语句笔记(foreach,list)
Nov 29 PHP
php查询mysql大量数据造成内存不足的解决方法
Mar 04 PHP
微信封装的调用微信签名包的类库
Jun 08 PHP
PHP实现超简单的SSL加密解密、验证及签名的方法示例
Aug 28 PHP
PHP封装的XML简单操作类完整实例
Nov 13 PHP
php格式文件打开的四种方法
Feb 24 PHP
PHP实现链表的定义与反转功能示例
Jun 09 PHP
PHP新特性之字节码缓存和内置服务器
Aug 11 #PHP
PHP基于MySQLI函数封装的数据库连接工具类【定义与用法】
Aug 11 #PHP
如何修改Laravel中url()函数生成URL的根地址
Aug 11 #PHP
PHP基于迭代实现文件夹复制、删除、查看大小等操作的方法
Aug 11 #PHP
基于Laravel5.4实现多字段登录功能方法示例
Aug 11 #PHP
PHP递归实现文件夹的复制、删除、查看大小操作示例
Aug 11 #PHP
关于PHP中协程和阻塞的一些理解与思考
Aug 11 #PHP
You might like
PHP生成便于打印的网页
2006/10/09 PHP
PHP 输出简单动态WAP页面
2009/06/09 PHP
为百度UE编辑器上传图片添加水印功能
2015/04/16 PHP
php利用gd库为图片添加水印
2016/11/09 PHP
PHP判断json格式是否正确的实现代码
2017/09/20 PHP
js插件方式打开pdf文件(浏览器pdf插件分享)
2013/12/20 Javascript
js点击事件链接的问题解决
2014/04/25 Javascript
javascript实现鼠标拖动改变层大小的方法
2015/04/30 Javascript
基于JQuery实现图片上传预览与删除操作
2016/05/24 Javascript
原生js实现网易轮播图效果
2020/04/10 Javascript
javascript读取文本节点方法小结
2016/12/15 Javascript
jQuery插件FusionCharts绘制的2D双柱状图效果示例【附demo源码】
2017/05/13 jQuery
Javascript 实现 Excel 导入生成图表功能
2018/10/22 Javascript
用jQuery将JavaScript对象转换为querystring查询字符串的方法
2018/11/12 jQuery
JavaScript中Dom操作实例详解
2019/07/08 Javascript
利用JS如何获取form表单数据
2019/12/19 Javascript
[43:32]Winstrike vs VGJ.S 2018国际邀请赛淘汰赛BO3 第一场 8.23
2018/08/24 DOTA
Python字符串处理实现单词反转
2017/06/14 Python
python ddt实现数据驱动
2018/03/14 Python
Python各种扩展名区别点整理
2020/02/27 Python
Python实现汇率转换操作
2020/05/03 Python
Python通过kerberos安全认证操作kafka方式
2020/06/06 Python
全球速卖通:AliExpress(国际版淘宝)
2017/09/20 全球购物
贝嫂喜欢的婴儿品牌,个性化的婴儿礼物:My 1st Years
2017/11/19 全球购物
波兰家居饰品和厨房配件网上商店:Maleomi
2020/12/15 全球购物
人力资源行政经理自我评价
2013/10/23 职场文书
乡下人家教学反思
2014/02/01 职场文书
《翻越远方的大山》教学反思
2014/04/13 职场文书
2014年创先争优活动总结
2014/05/04 职场文书
六查六看自检自查剖析材料
2014/10/14 职场文书
初中学生操行评语
2014/12/26 职场文书
画展邀请函
2015/01/31 职场文书
CSS3实现模糊背景的三种效果示例
2021/03/30 HTML / CSS
jdbc使用PreparedStatement批量插入数据的方法
2021/04/27 MySQL
你真的了解PHP中的引用符号(&)吗
2021/05/12 PHP
使用python+pygame开发消消乐游戏附完整源码
2021/06/10 Python