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 相关文章推荐
图书管理程序(二)
Oct 09 PHP
PHP 出现乱码和Sessions验证问题的解决方法!
Dec 06 PHP
DW中链接mysql数据库时,建立字符集中文出现乱码的解决方法
Mar 27 PHP
Laravel框架中扩展函数、扩展自定义类的方法
Sep 04 PHP
thinkphp中session和cookie无效的解决方法
Dec 19 PHP
PHP中的替代语法介绍
Jan 09 PHP
php通过function_exists检测函数是否存在的方法
Mar 18 PHP
php在apache环境下实现gzip配置方法
Apr 02 PHP
Laravel 5框架学习之Laravel入门和新建项目
Apr 07 PHP
thinkPHP实现将excel导入到数据库中的方法
Apr 22 PHP
php抛出异常与捕捉特定类型的异常详解
Oct 26 PHP
PHP定义字符串的四种方式详解
Feb 06 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
漫威DC即将合作联动,而双方早已经秘密开始
2020/04/09 欧美动漫
PHP 中文处理技巧
2010/04/25 PHP
php读取txt文件组成SQL并插入数据库的代码(原创自Zjmainstay)
2012/07/31 PHP
PHP也能干大事之PHP中的编码解码详解
2015/04/20 PHP
PHP实现动态压缩js与css文件的方法
2018/05/02 PHP
PHP getName()函数讲解
2019/02/03 PHP
JavaScript 页面坐标相关知识整理
2010/01/09 Javascript
js replace正则表达式应用案例讲解
2013/01/17 Javascript
jQuery实现列表的全选功能
2015/03/18 Javascript
js代码实现无缝滚动(文字和图片)
2015/08/20 Javascript
理解javascript定时器中的单线程
2016/02/23 Javascript
JavaScript地理位置信息API
2016/06/11 Javascript
用js控件div的滚动条,让它在内容更新时自动滚到底部的实现方法
2016/10/27 Javascript
jQuery实现自动调用和触发某个事件的方法
2016/11/18 Javascript
jQuery除指定区域外点击任何地方隐藏DIV功能
2017/11/13 jQuery
详解vue-cli 快速搭建单页应用之遇到的问题及解决办法
2018/03/01 Javascript
js replace 全局替换的操作方法
2018/06/12 Javascript
jQuery实现参数自定义的文字跑马灯效果
2018/08/15 jQuery
iphone刘海屏页面适配方法
2019/05/07 Javascript
JS Math对象与Math方法实例小结
2019/07/05 Javascript
layui富文本编辑器前端无法取值的解决方法
2019/09/18 Javascript
Selenium执行Javascript脚本参数及返回值过程详解
2020/04/01 Javascript
vue-cli或vue项目利用HBuilder打包成移动端app操作
2020/07/29 Javascript
JS常用跨域方法实现原理解析
2020/12/09 Javascript
Python标准库sched模块使用指南
2017/07/06 Python
Python tkinter模块弹出窗口及传值回到主窗口操作详解
2017/07/28 Python
python和js交互调用的方法
2020/06/23 Python
椰子猫砂:CatSpot
2018/08/27 全球购物
ANINE BING官方网站:奢华的衣橱基本款和时尚永恒的单品
2019/11/26 全球购物
SQL Server数据库笔试题和答案
2016/02/04 面试题
中班上学期幼儿评语
2014/04/30 职场文书
2015高中教师个人工作总结
2015/07/21 职场文书
25句企业管理语录:助你迅速打开思路,句句经典!
2020/01/14 职场文书
Nginx tp3.2.3 404问题解决方案
2021/03/31 Servers
Pytest之测试命名规则的使用
2021/04/16 Python
java版 简单三子棋游戏
2022/05/04 Java/Android