PHP 文件缓存的性能测试


Posted in PHP onApril 25, 2010

PHP常用缓存方式
第一种,把需要缓存的数据进行处理,形成PHP可以直接执行的文件。在需要缓存数据的时候,通过include方式引入,并使用。
第二种,把需要的数据通过serialize函数序列化后直接保存到文件。在需要使用缓存数据的时候,通过反序列化读入文件内容并复制给需要的变量,然后使用。

测试结果
通过测试我们发现,第二种也就是serialize缓存数据的方式更加高效。(数据略去,最后提供了文章地址下载,大家可以自行测试)

原因分析
include方式读取缓存的时候,PHP需要执行几个过程
1.读取文件
2.解析所Include的文件
3.执行,给变量赋值

而serialize序列化方式读取缓存的时候:
1.读取数据
2.反序列化数据内容
3.给变量赋值

总结分析
第一种,include缓存的方式
优点:增加数据的保密性,和安全性,缓存内容不会被外界发现。
缺点:速度相对较慢。
用途:保存禁止系统外部得知的数据,比如web系统的设置,甚至MySQL信息等的保存

第二种,serialize序列化缓存的方式
优点:速度较快。
缺点:缓存系统文件路径一旦曝光,缓存内容会泄露。
用途:缓存最新文章,相关文章等不担心外部得知的数据的时候,可以使用这种方式。

PHP 相关文章推荐
图形数字验证代码
Oct 09 PHP
PHP session会话的安全性分析
Sep 08 PHP
PHP 年龄计算函数(精确到天)
Jun 07 PHP
PHP基于数组实现的分页函数实例
Aug 20 PHP
WordPress中访客登陆实现邮件提醒的PHP脚本实例分享
Dec 14 PHP
CentOS下PHP7的编译安装及MySQL的支持和一些常见问题的解决办法
Dec 17 PHP
php中替换字符串函数strtr()和str_repalce()的用法与区别
Nov 25 PHP
php-msf源码详解
Dec 25 PHP
为何说PHP引用是个坑,要慎用
Apr 02 PHP
thinkPHP3.2.3实现阿里大于短信验证的方法
Jun 06 PHP
php微信开发之关注事件
Jun 14 PHP
Laravel 6 将新增为指定队列任务设置中间件的功能
Aug 06 PHP
PHP 中文处理技巧
Apr 25 #PHP
PHP 网络开发详解之远程文件包含漏洞
Apr 25 #PHP
php快速url重写更新版[需php 5.30以上]
Apr 25 #PHP
PHP CURL模拟GET及POST函数代码
Apr 25 #PHP
php file_get_contents函数轻松采集html数据
Apr 22 #PHP
国外比较好的几个的Php开源建站平台小结
Apr 22 #PHP
PHP最常用的ini函数分析 针对PHP.ini配置文件
Apr 22 #PHP
You might like
一个简单的PHP验证码实现代码
2014/05/10 PHP
浅谈PHP调用Webservice思路及源码分享
2014/06/04 PHP
destoon调用企业会员公司形象图片的实现方法
2014/08/21 PHP
smarty中英文多编码字符截取乱码问题解决方法
2014/10/28 PHP
php post大量数据时发现数据丢失问题解决方法
2015/06/20 PHP
PHP开发之用微信远程遥控服务器
2018/01/25 PHP
改版了网上的一个js操作userdata
2007/04/27 Javascript
一个javascript图片阅览组件
2010/11/09 Javascript
关于JavaScript定义类和对象的几种方式
2010/11/09 Javascript
js document.write()使用介绍
2014/02/21 Javascript
js+css简单实现网页换肤效果
2015/12/29 Javascript
JavaScript编程中实现对象封装特性的实例讲解
2016/06/24 Javascript
极力推荐10个短小实用的JavaScript代码段
2016/08/03 Javascript
浅谈Vue响应式(数组变异方法)
2018/05/07 Javascript
Vue.js实现tab切换效果
2019/07/24 Javascript
JavaScript Array对象基本方法详解
2019/09/03 Javascript
原生javascript实现类似vue的数据绑定功能示例【观察者模式】
2020/02/24 Javascript
使用FastCGI部署Python的Django应用的教程
2015/07/22 Python
Django视图和URL配置详解
2018/01/31 Python
浅谈python在提示符下使用open打开文件失败的原因及解决方法
2018/11/30 Python
python3使用pandas获取股票数据的方法
2018/12/22 Python
在PyCharm的 Terminal(终端)切换Python版本的方法
2019/08/02 Python
Python实现密码薄文件读写操作
2019/12/16 Python
关于pytorch处理类别不平衡的问题
2019/12/31 Python
将matplotlib绘图嵌入pyqt的方法示例
2020/01/08 Python
Python如何解除一个装饰器
2020/08/07 Python
介绍一下Transact-SQL中SPACE函数的用法
2015/09/01 面试题
保安队长职务说明书
2014/02/23 职场文书
社区消防工作实施方案
2014/03/21 职场文书
我有一个梦想演讲稿
2014/05/05 职场文书
李开复演讲稿
2014/05/24 职场文书
2015年税务稽查工作总结
2015/05/26 职场文书
幼儿园小班开学寄语
2015/05/27 职场文书
《牧场之国》教学反思
2016/02/22 职场文书
JavaScript中的LHS和RHS分析详情
2022/04/06 Javascript
HTML静态页面获取url参数和UserAgent的实现
2022/08/05 HTML / CSS