• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧
您的位置:首页 > CMS教程 >phpcms > phpcms缓存使用总结(memcached、eaccelerator、shm)

phpcms缓存使用总结(memcached、eaccelerator、shm)

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-05-13

佚名 向大家介绍了eaccelerator,eaccelerator安装,eaccelerator下载,php eaccelerator,eaccelerator 0.9.5.3等相关知识,希望对您有所帮助

a.模板编译缓存
参考文件include/global.func.php及include/template.func.php
模板编译缓存的原理其实很简单,如果模板是第一次编译,则直接编译它,如果不是第一次编译,则比较模板文件($tplfile)及模板缓存文件 ($compiledtplfile)的修改时间,如果模板文件的修改时间大于编译过的模板缓存文件,则编译模板,否则不编译模板,提高了程序的执行效 率。


b.在动态页面里面产生静态的缓存文件

与c的缓存原理类似,只是此处生成的文件名相对固定
以问吧模块为例进行说明
用http://www.chf.com/opensource/phpcms2007_sp6_gbk/phpcms/wenba/进行访问
此目录下有个index.php文件,判断当前目录下是否存在名为index_cache.html的文件,如果有没有过失效期,则直接包含此文件,否则动态地读取完数据后保存为index_cache.html文件,以备下次使用。
文件index.php中的内容:


怎么判断文件是否失效呢,文件data/cache/wenba_setting.php中有如下的设置,其中字段autoupdate的值就是文件失效的时间,单位是秒,在后台可以进行设置
文件wenba_setting.php是从哪儿来的呢,进行安装时自动把各种模块的数据保存到数据库中了,安装时就生成缓存数据了,在include/common.inc.php中函数cache_all也可以生成缓存,后台进行设置时cache会自动更新的


'vote_give_actor' => '公司白领</p> <p>魔法师</p> <p>科举夺魁</p> <p>武将</p> <p>江湖奇侠',
'autoupdate' => '10',
'name' => '问吧',
'moduledir' => 'wenba',
'moduledomain' => '',
'linkurl' => '/opensource/phpcms2007_sp6_gbk/phpcms/wenba/',
);
?>
</div>

include/global.func.php
更新模块设置函数


c.在动态页面里面产生静态的缓存文件

与b的缓存原理类似,只是此处生成的文件名是根据计算$PHP_SELF与$PHP_QUERYSTRING的md5值生成的文件名,相对于所有php动态页面来说都是一样的,这个思想比较精典,值得借签
以问吧模块为例进行说明
文件调用顺序为:index.php -> js.php -> ad.php -> global.func.php
用http://www.chf.com/opensource/phpcms2007_sp6_gbk/phpcms/wenba/进行访问
此目录下有个index.php文件,判断当前目录下是否存在名为index_cache.html的文件,如果有,则直接包含此文件,如果不存在此文件,则动态地读取完数据后保存在index_cache.html文件,以备下次使用

用上述的url访问时,页面里面包含有如下的一行js代码
<script language="javascript" src="/opensource/phpcms2007_sp6_gbk/phpcms/data/js.php?id=1"></script>
此js代码其实就是动态调用php页面的内容
http://www.chf.com/opensource/phpcms2007_sp6_gbk/phpcms/data/js.php?id=1

js.php文件的内容:


ad.php的内容:


require MOD_ROOT.'/include/global.func.php';</p> <p>$placeid = intval($id);</p> <p>$query ="SELECT * FROM ".TABLE_ADS." AS a LEFT JOIN ".TABLE_ADS_PLACE." AS p ON (a.placeid=p.placeid) WHERE a.placeid=".$placeid." AND a.fromdate<=UNIX_TIMESTAMP() AND a.todate>=UNIX_TIMESTAMP() AND p.passed=1 AND a.passed=1 AND a.checked=1 ORDER BY a.addtime";
$ads = $db->get_one($query, "CAHCE", 10240);
if(!$ads) exit('document.write("")');</p> <p>$db->query("UPDATE ".TABLE_ADS." SET views=views+1 WHERE adsid=".$ads['adsid']);</p> <p>$content = ads_content($ads);
$templateid = $ads['templateid'] ? $ads['templateid'] : 'ads';
include template('ads', $templateid);
phpcache();
?>
</div>

ad.php里面调用了phpcache函数,参考文件include/global.func.php


file_put_contents($cachefile, $contents); //在

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • phpcms缓存使用总结(memcached、eaccelerator、shm)

相关文章

  • 2017-05-13phpcms v9默认后台登录地址修改方法
  • 2017-05-13PHPCMS取消搜索时的分词功能的方法
  • 2017-05-13phpcms 调用全站任何模型数据的PC标签
  • 2017-05-13PHPCMS V9用array_unique函数解决采集网址重复的办法
  • 2017-05-13phpcms教程之增加统计代码可以统计每天发表文章数量
  • 2017-05-13Phpcms自定义URL规则技巧整理
  • 2017-05-13phpcms 投稿问题之游客投稿(不用登录)
  • 2017-05-13phpcms 2008 修改编辑器工具栏问题
  • 2017-05-13phpcms V9自定义评论字段UTF8_CMSYOU修正版
  • 2017-05-13完美解决phpcms图片太大撑破表格图片自适应图片按比例缩小

文章分类

  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧

最近更新的内容

    • phpcms v9联动菜单的调用方法及get_linkage函数详解
    • phpcms在地址栏中显示网站图标的方法(增加网站ico图标)
    • Phpcms V9 管理后台登陆及会员注册登录模板的修改方法
    • phpcms V9实现QQ登陆OAuth2.0提供下载
    • phpcms v9中调用发布时间的方法
    • PHPCMS开启全文搜索(sphinx)后搜索无效的解决方法
    • PHPCMS系统安全设置步骤
    • phpcms v9添加热门搜索关键词的方法
    • phpcms v9关联文章排序陈旧问题的修改方法
    • phpcms2008 常用数组,变量整理

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有