thinkphp3.2 开启静态缓存与缓存规则设置
来源:原创
时间:2015-08-14
作者:脚本小站
分类:PHP
网站的静态缓存对大访问量有很好的缓解作用,尤其对网站的大并发,可有效的缓解数据库的压力。在thinkphp中实现静态缓存很简单,thinkphp都已经封装好了直接调用即可。
静态缓存
首先设置 HTML_PATH 静态缓存文件目录,默认是在项目的应用目录下如:App/Html
在前台或后台打开静态缓存
'HTML_CACHE_ON' => true, // 开启静态缓存
3.设置静态缓存时间
'HTML_CACHE_TIME' => 3600, // 全局静态缓存有效期(秒)
4.设置静态缓存后缀
'HTML_FILE_SUFFIX' => '.html', // 设置静态缓存文件后缀
5.设置静态缓存规则
'HTML_CACHE_RULES' => array( // 定义静态缓存规则 // 定义整个文章控制器 'Article:' => 'Article/{:action}_{id}', // 对商品进行缓存 'Product:plist' => 'Product/plist_{id}_{pid}', // 对单个操作进行缓存 'Index:index' => 'Index/index', 'Product:category'=>array('Product/category',0), ),
缓存规则有很多,可以参考thinkphp3.2的手册,缓存时间设置为0时为永久缓存。
查询缓存
除了静态缓存还有查询缓存也是比较常用的一种缓存方式:
一般情况下这么写就可以缓存了,除了第一次查询外再次查询就直接读缓存
$Model->cache(true)->where('status=1')->select();
还可以给这条缓存起名,以便在其他地方读取该缓存
$Model->cache('cache_name')->select(); //读取该缓存 $value = S('cache_name');
下面是查询缓存配置
//缓存类型,这里写的是文件缓存 'DATA_CACHE_TYPE'=>'File', //缓存文件前缀 'DATA_CACHE_PREFIX' =>'Kangku_', //缓存时间,秒 'DATA_CACHE_TIME' =>600,
还可以单独设置缓存方式与缓存时间
$Model->cache(true,60,'file')->select();