LOADING STUFF...

PHP中常见的缓存技术实例分析

技术教程2小时前更新 北陌
25 0 0

PHP中常见的缓存技术实例分析

本文实例分析了PHP中常见的缓存技术。分享给大家供大家参考。具体如下:

JBLOG在开发的过程中,对性能的优化做了不少工作。为了尽量减少不必要的数据库查询,我对一些数据进行了缓存和静态化处理。

缓存的原理:把一些经常要用到但又很少改动的数据以数组或其它形式存储到一个独立的PHP文件中,然后在需要用到的时候包含进来。

缓存的优点:能够大大减少数据库的查询次数,减轻数据库的压力,提高程序的执行效率。

JBLOG缓存的数据有:系统设置、博客分类、侧栏最新日志、最新评论、博客统计、日志归档、友情链接、标签等。通过缓存这些数据,执行一次页面数据库的查询次数从十几次减少到3次。

JBLOG中与缓存相关的函数保存在include目录下的cache.func.php里,主要函数:

//刷新缓存
function recache($cachestr = ) {
if (!$cachestr) {
$cachelist = array(config,class,archive,newcomment,newpost,link,tag,statistic,topblog);
} else {
$cachelist = explode(,,$cachestr);
foreach ($cachelist as $cache) {
$cachename = $cache._recache;
if (function_exists($cachename)) {
$cachename();
}
}
}
}

recache()函数用来刷新缓存,每一个缓存以独立的函数存在,刷新缓存时仅需执行一次相应的函数即可。

//将字符串写进文件
function writeToFile($cachename,$content = ) {
$allowcache = $cachelist = array(config,class,archive,newcomment,newpost,link,tag,statistic,topblog);
if (in_array($cachename,$allowcache)) {
$cache_dir = JBLOG_ROOT.cache_data/;
$cache_file_name = $cache_dir.cache_.$cachename..php;
if (!is_dir($cache_dir)) {
@mkdir($cache_dir,0777);
}
if ($fp = @fopen($cache_file_name,wb)) {
$content = “

© 版权声明

相关文章

暂无评论

暂无评论...