以前在群里一直有说这个KingCMS 5生成占用CPU太大的问题,
悟空曾经介绍过一个方法
修改page/Article/fun.asp里面的第10行
r_time = 1300 '毫秒 文章生成时间差设置,数字越大生成效率越低CPU占用率
建议改为1300,以前好像是600多的!呵呵!
这个方法的确有效,但同时生成速度会更加慢,因为KingCMS的生成本身就慢了,这样的方法其实很没效率,怎么样让生成快一点呢,我的建议:活用广告系统和SSI 。 具体方法,一点点讲。
这个是另一种方法[KingCMS模板缓存方式更改加快生成速度]
对于广告系统而言,能够执行标签是个非常好的优势,这里我给两张图先看一下

图一为模板中的标签,可以看到除了系统的标签有很多都是{king:ad name="" type="ssi" /}来调用的,没有文章或其他的调用标签,不是说没有,而是我都放进了广告系统里, 现在来看看后台的样子

如果了解系统标签看这个应该就明白了,前台调用的标签都在这里, 那一个标签里究竟有什么东西呢?我给一个看看吧

不用奇怪为什么我的广告系统跟默认的不一样,详细看这个[KingCMS广告菜单编辑器修改] .为了方便编辑,我加了一个小的editor,但如果是默认的编辑器也不过就是原代码的样子.
现在来说说这个的好处,如果用ssi你可以发现在生成的文件里这个标签被替换成了<!-- #include virtual="index-news.shtml" -->, 如果不理解这句话的意思参考这篇[Kingcms视频教程第三集-KingCMS外部模板和KingCMS内部模板的区别和用途] 里面的介绍, 那么文件在生成的时候其实就是没有读数据库,只是将{king:ad name="" type="ssi" /}这样的标签替换成<!-- #include virtual="" -->这样的html代码, 如果是文章系统就只解释了很少的几标签, 读数据库也就只读了一次表,这些文件都是生成好了存在的.
如果更新文章的话,更新列表和文章就非常单一的只读了两个表,基本不重复读取.生成速度就大有改变. 那么要更新相关的文章或最新的新闻, 一是可以在首页加自动更新的代码{king:ad#update time="1"/} , 让它自己更新; 二是全部自己后台手动更新下,这个时间总共加起来应该都比标签在模板里面快,因为不用重复根据标签去读取数据,一两个文章或一两个标签还看不出来区别,上百了区别就大了。
易用性就自己去体会吧,其实也算是把一些标签页缓存了。而且SSI最好的优点用了就明白了。这个就介绍到这,算是对[Kingcms视频教程第三集-KingCMS外部模板和KingCMS内部模板的区别和用途] 这篇文章的另外弥补