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 相关文章推荐
PHP学习笔记之数组篇
Jun 28 PHP
php使用Smarty的相关注意事项及访问变量的几种方式
Dec 08 PHP
解析PHP中intval()等int转换时的意外异常情况
Jun 21 PHP
php多文件上传实现代码
Feb 20 PHP
destoon安装出现Internal Server Error的解决方法
Jun 21 PHP
Laravel 5 学习笔记
Mar 06 PHP
php通过strpos查找字符串出现位置的方法
Mar 17 PHP
php获取文件类型和文件信息的方法
Jul 10 PHP
PHP函数func_num_args用法实例分析
Dec 07 PHP
php之可变函数的实例详解
Sep 13 PHP
微信支付之JSAPI公众号支付详解
May 15 PHP
如何理解PHP核心特性命名空间
May 28 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 intval的测试代码发现问题
2008/07/27 PHP
php MYSQL 数据备份类
2009/06/19 PHP
PHP函数篇详解十进制、二进制、八进制和十六进制转换函数说明
2011/12/05 PHP
php实现在限定区域里自动调整字体大小的类实例
2015/04/02 PHP
javascript显示隐藏层比较不错的方法分析
2008/09/30 Javascript
基于jQuery的图片左右无缝滚动插件
2012/05/23 Javascript
js中数组Array的一些常用方法总结
2013/08/12 Javascript
JQuery对表格进行操作的常用技巧总结
2014/04/23 Javascript
简介JavaScript中用于处理正切的Math.tan()方法
2015/06/15 Javascript
在JavaScript的AngularJS库中进行单元测试的方法
2015/06/23 Javascript
浅谈JavaScript中的对象及Promise对象的实现
2015/11/15 Javascript
xmlplus组件设计系列之列表(4)
2017/04/26 Javascript
JS实现获取汉字首字母拼音、全拼音及混拼音的方法
2017/11/14 Javascript
Vue中的字符串模板的使用
2018/05/17 Javascript
微信小程序wepy框架学习和使用心得详解
2019/05/24 Javascript
原生js实现随机点餐效果
2019/12/10 Javascript
Element-ui el-tree新增和删除节点后如何刷新tree的实例
2020/08/31 Javascript
vue3.0自定义指令(drectives)知识点总结
2020/12/27 Vue.js
初探利用Python进行图文识别(OCR)
2019/02/26 Python
Python基于Hypothesis测试库生成测试数据
2020/04/29 Python
Python+Kepler.gl轻松制作酷炫路径动画的实现示例
2020/06/02 Python
Python 实现将某一列设置为str类型
2020/07/14 Python
Python编写万花尺图案实例
2021/01/03 Python
html5 Canvas画图教程(5)—canvas里画曲线之arc方法
2013/01/09 HTML / CSS
获取邓白氏信用报告:Dun & Bradstreet
2019/01/22 全球购物
KEEN美国官网:美国人气户外休闲鞋品牌
2021/03/09 全球购物
实习教师个人的自我评价
2013/11/08 职场文书
数控专业推荐信范文
2013/12/02 职场文书
暑期社会实践方案
2014/02/05 职场文书
销售职业生涯规划范文
2014/03/14 职场文书
快餐公司创业计划书
2014/04/29 职场文书
党员一帮一活动总结
2014/07/08 职场文书
法英专业大学生职业生涯规划范文:衡外情,量己力!
2014/09/23 职场文书
公安交警中队队长个人对照检查材料思想汇报
2014/10/05 职场文书
酒店辞职书范文
2015/02/26 职场文书