欢迎来到站长天空!

DedeCMS

当前位置: 主页 > CMS教程 > DedeCMS

DEDE后台生成静态文章速度慢的原因分析

时间:2018-09-01 00:00:00|栏目:DedeCMS|点击:

">

很多人说DEDE后台生成文章的速度太慢,1万篇文章居然用了几个小时。有些说10万篇文章整个晚上还没生成完。这样很影响网站维护效率。

想让DEDE的生成文章速度提高,需要先了解DEDE在生成文章过程中都做了哪些事、涉及到哪些代码和数据。

从includearc.archives.class.php文件细细看,DEDE大概做了这几件事:

1、调出文章的全部数据,包括AID、栏目ID、标题、作者、时间等,一部分数据待用,一部分赋值到前台显示。

2、判断文章所用的模板。

3、调用文章的附加数据,最主要是文章内容。如果是分类信息,则调出所有字段内容。

4、处理文章内容中的图片,加alt值,调用缩略图。

5、判断文章是否有分页。

6、调取文章的TAG和TAG的链接。

7、获得上一篇、下一篇文章的ID、标题、链接。

8、获得相关文章的ID、标题、链接。

9、替换文章中的关键词。

前面5个步骤都是必须的,也用不了多少资源,不用管,也无法做优化。调取TAG也是必须的,一般只有三四个TAG,也是费不了多少资源。上一篇、下一篇及相关文章有点耗资源,尽量把范围缩小一点好。比如不要上下篇,相关文章仅限于本栏目,可以提高查询速度。

最耗资源的是文章中的关键词替换。默认的替换程序是先判断TAG,如果有TAG,就按TAG选择关键词,再替换。这个方式很多站长都不喜欢,因为替换范围太有限了。如果没设置TAG,就不会替换。如果把代码修改为跟TAG无关,只要文章中的词汇与预先设置的关键词表匹配就替换,那查询量就非常大:要先把整个关键词表调出来,然后每个词与整篇文章匹配一遍,配上就替换,否则就不替换。如果后台设置了1000个关键词,那这篇文章在生成静态的过程中,就重复判断1000次才完成。如果要生成1万篇文章,那么光关键词替换这里,就要判断1000万次,速度被拖得非常非常慢。如果关键词设置得更多,则速度更慢。

为什么替换文章中的关键词?基本上都是为了SEO,让蜘蛛多爬一些页面。但不是说你设置了链接,蜘蛛就会乖乖的个个都去爬的。如果是相关性不太大的页面,还会产生负作用。我感觉一篇文章有TAG、相关文章这两项,就已经足够了,不需要添加更多的关键词链接。

所以我现在已经禁止了关键词替换(后台可选择),然后再生成文章,速度就非常快。1398 总用时:1.95 分钟,照此推算,生成1万篇文章最多20分钟,10万篇也就三个多小时。

上一篇:忘记dedecms后台管理员密码怎么办?

栏    目:DedeCMS

下一篇:dedecms标签中的sql万能标签 直接调用正文中的内容

本文标题:DEDE后台生成静态文章速度慢的原因分析

本文地址:https://zz.feitang.co/CMSjiaocheng/27719.html

广告投放 | 联系我们 | 版权申明

申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:257218569 | 邮箱:257218569@qq.com

Copyright © 2018-2025 站长天空 版权所有 Powered by EyouCms冀ICP备14023439号