大家会经常碰到这样的问题,如果织梦后台文档比较多,数据比较大的时候,生成栏目文档会相当慢。最近小编一直在和一位朋友聊关于怎样才可以加快dedecms生成速度方法。觉得这也是dedecms一个缺点吧!例如如果一个dedecms中有上十万以及上百万的访问量会对网站带来不少的垃圾量。而这样就会导致dedemcs生成速度下降最后导致用户得不到最佳的体验效果。
对这个问题去查了百度也没有一个好的处理方法。之后小编从dedecms官网找到了一段合适的代码,经过了小编测试之后,小编给大家简单的介绍下实现方法。
第一步要进入dedecms根目录中找下目录:
include/inc/inc_fun_SpGetArcList.php
找到之后最好下载到本地打开找到如下代码:
for($i=0;$i<$ridnum;$i++){ if($tpsql==””) $tpsql .= ” And ( (“.TypeGetSunID($reids[$i],$dsql,’arc’).” Or arc.typeid2='”.$reids[$i].”‘) “; else $tpsql .= ” Or (“.TypeGetSunID($reids[$i],$dsql,’arc’).” Or arc.typeid2='”.$reids[$i].”‘) “; }
找到的如上代码之后可以把上面代码注释掉或者替换都可以,替换改成如下代码:
for($i=0;$i<$ridnum;$i++){ if($tpsql==””) $tpsql .= ” And (“.TypeGetSunID($reids[$i],$dsql,’arc’); else $tpsql .= ” Or “.TypeGetSunID($reids[$i],$dsql,’arc’);
查找:
$orwhere .= " And ( arc.typeid in ($sonids) Or arc.typeid2 in ($sonids) ) "
替换为:
$orwhere .= " And arc.typeid in ($sonids) ";
下面看对生成的具体优化步骤:
1、关闭副栏目,生成速度从50秒20页降到20秒20页
2、删除文档模版中的调用随即文档的标签,即arclist中带有sort=rand的 开启后台中能找到的所有缓存,生成速度从20秒20页降到6秒多一页
3、删除文档模版中的相关文档,生成速度从6秒猛降到不到一秒,到达中部的时间 至此结束,终于满足了,不用再享受龟速的生成速度了!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。