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

yipeiwu_com6年前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用作中间转发层(接收http请求,用 socket跟c++做通信),由于代码没有用到框架,这些东西自然就是之前的人自己写的。最近需要对这个底层进行优化,于是便看了下这...

php中通过数组进行高效随机抽取指定条记录的算法

php使用数组array_rand()函数进行高效随机抽取指定条数的记录,可以随机抽取数据库中的记录,适合进行随机展示和抽奖程序。 该算法主要是利用php的array_rand()函数,...

php的扩展写法总结

为什么要用C扩展 C是静态编译的,执行效率比PHP代码高很多。同样的运算代码,使用C来开发,性能会比PHP要提升数百倍。IO操作如CURL,因为耗时主要在IOWait上,C扩展没有明显...

如何解决PHP获取不到SESSION信息之一般情况

一、检查 php.ini vim /etc/php.ini 检查这几项: session.save_handler = files // session 的存储类型; se...

php+javascript的日历控件

复制代码 代码如下:<html> <head> <title>js calendar</title> <script languag...