简单几步实现织梦DEDECMS负载性能最大限度优化

当我们使用织梦的时候,久了发现网站的负载越来越大,那我们可以通过对以上几步优化操作,现在我们的程序后台已经能够非常轻松的应付90万数据的管理和维护了,事实证明dedecms的负载性能的瓶颈并不是mysql、服务器或者操作系统平台等,如果把未经优化的程序放到oracle的数据库上,使用更高级别的服务器,使用freebsd的操作系统,表现一样会不尽如人意。细节决定成败,看起来dedecms必须要在程序调优、性能优化上好好下功夫了。想了解更详细的解决方案,请加入我们交流。

1.改进文档生成速度问题提出 和我们前一次测评结果相同,dedecms的文档的生成速度惨不忍睹。使用默认模板(article_article.htm),平均接近30秒才能生成20个页面(如图),按照这个速度生成下去,90万的数据全部生成网页能等到头发都白了。那么到底问题在哪里呢?

优化前单个栏目文档生成速度

问题分析 先排除表索引的问题,因为dede的数据库已经在数据主表(dede_archives)为主要字段都建立了索引。再排除主要内容的提取效率问题,因为页面生成过程中读取页面中的文章数据,每次需要到主表和附表中select取得id值唯一的数据内容,这个SQL语句的效率我们通过直接在mysql中运行SQL语句测试,执行时间非常短,因此这也不是最大的瓶颈。

终于在页面生成过程中,我们发现程序执行了数次主表(dede_archives)查询,并取出符合一组复杂查询条件数据的操作,查询效率非常低,原来是它在影响效率!通过调试跟踪,我们定位了问题的关键,元凶就是模板中arclist标签。Arclist标签是很多人很喜欢用的标签,因为它比较灵活,能从数据中取出热门、最新、相关等各种类型的文章列表,但是arclist标签每次都会带着一大推搜索条件去主表中查询,实际上对于一次性生成大量文章来说,如果使用相同的模板,arclist对数据库的查询操作只是简单机械重复罢了,为此而耗费了大量时间绝对是不值得的。接下来我们给出问题解决的建议。

解决问题解决方案1:去掉最终页面模板中的arclist标签,或者尽可能少用。这个方法虽然能极大提高效率,但是无异于泼水把孩子泼走了,对于企图增加访问pv的网站来说,不建议使用。

都懒得写日记来记录,可见内心底对旅行是多么的淡漠。

简单几步实现织梦DEDECMS负载性能最大限度优化

相关文章:

你感兴趣的文章:

标签云: