Dedecms V3.1 生成HTML速度的优化办法

yipeiwu_com7年前PHP代码库
由于版本兼容性等各方面的原因,实际上dedecms的索引有点混乱,如果索引设置得适合,影响dedecmsHTML生成速度的,主要是获得没有按默认按排序的文章列表的时候,由于要重新排序,数据量大时速度会很不理想,可以通过下面几个步骤轻松优化:

1、进入 phpmyadmin ,把 dedecms 站点 dede_archives 除了 ID 主键的索引外的索引删除;

2、用SQL创建如下索引:
Alter TABLE `#@__archives` ADD INDEX  `click` (`click`);
Alter TABLE `#@__archives` ADD INDEX  `typeid` (`typeid`);
Alter TABLE `#@__archives` ADD INDEX  `arcrank` (`arcrank`);
Alter TABLE `#@__archives` ADD INDEX  `sortrank` (`sortrank`);
Alter TABLE `#@__archives` ADD INDEX  `senddate` (`senddate`);
Alter TABLE `#@__archives` ADD INDEX  `pubdate` (`pubdate`);
Alter TABLE `#@__archives` ADD INDEX  `litpic` (`litpic`);
Alter TABLE `#@__archives` ADD INDEX  `typeid2` (`typeid2`);

在数据量为1W-10W左右的区间,经过这样的优化后,如果内容页没有相关文章的标记,生成速度会快三至五倍
如果有相关文章标记,也会快两至三倍

相关文章

php远程下载类分享

本文实例为大家分享了php远程下载类,如下 <?php /** * 下载远程文件类支持断点续传 */ class HttpDownload { private...

php SQL之where语句生成器

复制代码 代码如下://生成where字符串 function get_where($arg = null) { foreach ((array)$arg as $key => $...

PHP中foreach()用法汇总

PHP 4 引入了 foreach 结构,和 Perl 以及其他语言很像。这只是一种遍历数组简便方法。foreach 仅能用于数组,当试图将其用于其它数据类型或者一个未初始化的变量时会产...

thinkphp中多表查询中防止数据重复的sql语句(必看)

下面先来看看例子: table id name 1 a 2 b 3 c 4 c 5 b 库结构大概这样,这只是一个简单的例子,实际情况会复杂得多。 select *, c...

PHP中strtr与str_replace函数运行性能简单测试示例

PHP中strtr与str_replace函数运行性能简单测试示例

本文实例讲述了PHP中strtr与str_replace函数运行性能简单测试。分享给大家供大家参考,具体如下: strtr与str_replace函数性能,很简单的一个测试,只是简单的测...