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 相关文章推荐
用Zend Encode编写开发PHP程序
Oct 09 PHP
用PHP和ACCESS写聊天室(五)
Oct 09 PHP
function.inc.php超越php
Dec 09 PHP
PHP 错误之引号中使用变量
May 04 PHP
解析ajax事件的调用顺序
Jun 17 PHP
php实现的替换敏感字符串类实例
Sep 22 PHP
thinkphp特殊标签用法概述
Nov 24 PHP
PHP定时执行任务实现方法详解(Timer)
Jul 30 PHP
thinkphp jquery实现图片上传和预览效果
Jul 22 PHP
php的laravel框架快速集成微信登录的方法
Dec 12 PHP
PHP正则验证字符串是否为数字的两种方法并附常用正则
Feb 27 PHP
PHP全局使用Laravel辅助函数dd
Dec 26 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
利用static实现表格的颜色隔行显示
2006/10/09 PHP
php中根据某年第几天计算出日期年月日的代码
2011/02/24 PHP
PHP实现支持GET,POST,Multipart/form-data的HTTP请求类
2014/09/24 PHP
简单解析PHP程序的运行流程
2016/06/23 PHP
PHP中error_reporting函数用法详细介绍
2017/06/11 PHP
Symfony查询方法实例小结
2017/06/28 PHP
PHP读取目录树的实现方法分析
2019/03/22 PHP
什么是PHP7中的孤儿进程与僵尸进程
2019/04/14 PHP
javascript据option的value值快速设定初始的selected选项
2007/08/13 Javascript
javascript Discuz代码中的msn聊天小功能
2008/05/25 Javascript
jQuery学习笔记之DOM对象和jQuery对象
2010/12/22 Javascript
jQuery中使用了document和window哪些属性和方法小结
2011/09/13 Javascript
使用mini-define实现前端代码的模块化管理
2014/12/25 Javascript
jquery实现的省市区三级联动
2015/04/02 Javascript
Bootstrap基本样式学习笔记之按钮(4)
2016/12/07 Javascript
判断颜色是否合法的正则表达式(详解)
2017/05/03 Javascript
Angular.js初始化之ng-app的自动绑定与手动绑定详解
2017/07/31 Javascript
Vue与Node.js通过socket.io通信的示例代码
2018/07/25 Javascript
layui 实现加载动画以及非真实加载进度的方法
2019/09/23 Javascript
node.js中process进程的概念和child_process子进程模块的使用方法示例
2020/02/11 Javascript
vue实现列表拖拽排序的功能
2020/11/02 Javascript
jQuery实现简单弹幕制作
2020/12/10 jQuery
Python Web框架Tornado运行和部署
2020/10/19 Python
python 检测nginx服务邮件报警的脚本
2020/12/31 Python
HTML5 CSS3给网站设计带来出色效果
2009/07/16 HTML / CSS
男女钓鱼靴和甲板鞋:XTRATUF
2021/01/09 全球购物
俄罗斯卫浴采暖及维修用品超级市场:Dkrussia
2020/05/12 全球购物
怎样写好自荐信和推荐信
2013/12/26 职场文书
《只有一个地球》教学反思
2014/02/14 职场文书
文明工地标语
2014/06/16 职场文书
课内比教学心得体会
2014/09/09 职场文书
体育专业大学生职业生涯规划范文:打造自己的运动帝国
2014/09/12 职场文书
学习十八大标语
2014/10/09 职场文书
2014年政协工作总结
2014/12/09 职场文书
学雷锋倡议书
2015/01/19 职场文书
导游词之秦始皇兵马俑博物馆
2019/09/29 职场文书