全面优化V4.0及AJAX标签使用技巧

众所周知。KesionCMS V4.0无论从功能上,还是从性能上都有了质的飞越。不再是以往版本1秒仅能生成1篇文章的系统了。但近期也发现有部分用户提到速度并没有多大提高。现在我大致给大家做个总结。

1、标签调用不合理

A、自定义静态标签(影响最大)

有些用户为了方便,大量使用了自定义静态标签。甚至将整个页面模板做成一个静态标签调用。更可怕的是在自定义静态标签里插入大量的系统函数标签,自定义SQL标签等。

经测试如果在自定义静态标签里插入系统函数标签和自定义sql标签,系统的生成速度将大打折扣.原因如下:原本只需读取数据库进行一次的标签替换工作,而借助自定义静态标签无形中却需要最少两次的标签替换工作。所以性能下降。

经以上分析:解决方法是尽量少用或不用自定义静态标签。绝对不在自定义静态标签里插入系统函数标签和自定义SQL标签。

  B、自定义SQL标签

   用过自定义SQL标签的朋友都知道,一个SQL标签对应一条SQL查询语句。SQL的构造合理与否直接影响到系统的性能。

举例如下:

语句一:Select * from ks_article where tid in('栏目ID') order by id desc

语句二:Select top 10 id,title,AddDate  From KS_Article Where Tid='栏目ID' order by id desc

并假设循环体都如以下:

代码如下:

[loop=10] 
<li> 
<ahref="{$Field(ID,GetInfoUrl,1,1)}" target="_blank">{$Field(Title,Text,5,...,0,)}</a>({$Field(Adddate,Date,YYYY年MM月DD日)}) 
</li> 
[/loop]

以上代码段中。显然运行最终效果都一样,但语句二的执行效率将优于语句一。当你的数据量越多越明显。这里就不详情说明原因了,有兴趣的朋友可以参考:http://www.cnblogs.com/xhp5678/archive/2006/07/07/445206.html, http://www.cnblogs.com/oec2003/archive/2007/05/09/740048.html
C.系统函数标签

KesionCMS系统函数标签作为入门级标签,所有代码都集成在核心代码的函数内。已在语句上做了大量的优化工作了。原则上用户在使用上也无需注意什么了。但如果你稍微留意,你就会发现很多标签都支持通用。细心的朋友会发现标签属性里的”所性栏目”一栏中:分别有”当前栏目(通用)”、”不指定栏目”等。这时你如果指定为当前栏目(通用),那么你建的这个标签在本模型里就是通用标签了。这样,你也就无需建大量的标签。从页减少数据库的标签替换次数.。
2、栏目划分不合理 
    有些用户栏目划分极其不合理,一个栏目下的文章居然达到几万条数据。对于栏目下文章较多,建议将栏目进行细分。V4.0引进了模型,也可以通过自建模型,将数据分布到用户建的数据表。从而有效的减少了单个数据表的压力.

3、没有定期对数据库进行维护

使用Access数据库的用户请定期的对数据库进行压缩修复,SQL数据库的用户可以定期的清除日志,压缩等.定期的维护数据库你也可以发现系统的性能会有所提高.

什么时候标签使用Ajax输出

KesionCMS V4.0独创引入标签ajax输出功能,但有些用户对此并不了解,不清楚的朋友可以在此了解http://tech.163.com/05/0908/17/1T55SUPP00091K8Q.html

1、终级列表标签(分页标签)

当网站的栏目信息不允许别人采集时,可以输用ajax输出.

当你的栏目下文章超过1000篇时,可以考虑ajax输出。原因如下:假设你每页显示是20篇。那么每次生成这个栏目页就需同时生成1000/20=50个静态页面。假如有20个栏目,按全部生成的话,一瞬间就要同时生成50*20=1000个静态页面,这时服务器占用资源就会急剧增大.造成发布栏目页很慢。那如果是ajax输出,每个栏目无论文章数多少,都输生成一个静态页面。其实ajax是无刷新动态调用的。当你用AJAX输出时,你在后台添加的新的内容,甚至不需要再生成栏目页面,因为他会动态更新。

2、最新更新,点击排行,推荐信息等调用

当你的内容页面已生成静态页面后,你是否曾经因为内容页不能自动更新点击排行,不能自动更新最新添加的文章,不能自动更新推荐信息而烦恼呢?KesionCMS V4.0引进了ajax输出,彻底解决了这个问题了。您只需将标签输出格式选择ajax即可。

(0)

相关推荐

  • 全面优化V4.0及AJAX标签使用技巧

    众所周知.KesionCMS V4.0无论从功能上,还是从性能上都有了质的飞越.不再是以往版本1秒仅能生成1篇文章的系统了.但近期也发现有部分用户提到速度并没有多大提高.现在我大致给大家做个总结. 1.标签调用不合理 A.自定义静态标签(影响最大) 有些用户为了方便,大量使用了自定义静态标签.甚至将整个页面模板做成一个静态标签调用.更可怕的是在自定义静态标签里插入大量的系统函数标签,自定义SQL标签等. 经测试如果在自定义静态标签里插入系统函数标签和自定义sql标签,系统的生成速度将大打折扣.原

  • Ajax标签导航效果(仿网易首页)

    根据yaohaixiao的Ajax标签导航效果:http://www.blueidea.com/tech/web/2006/4144.asp改进.效果:http://www.lorlo.com/tab.html 主要是改了JS: 复制代码 代码如下: <!-- function getObject(objectId) {      if(document.getElementById && document.getElementById(objectId)) {     // W3C

  • vue-element-admin开发教程(v4.0.0之后)

    目录 安装&准备工作&ESLint配置 连接后台真数据 Mock 假数据 不需要 Mock 虚拟数据怎么办? 前端拦截器 登陆功能 自定义 vuex 参数 Mock 数据部分代码 由于 vue-element-admin 的架构再 4.0.0 版本后做了重构,所以写这个文章,对改动比较大的部分做个讲解,方便大家入门学习.虽说项目做了重构,但是整体结构上和之前的还是很相似的,所以有些和之前差不多的我会直接放之前文章的链接 由于 Markdown 实在不太会用,这里手动列下目录,毕竟东西有点杂

  • vue-element-admin开发教程(v4.0.0之前)

    目录 安装 下载 vue-element-admin,并启动 准备工作 汉化 推荐安装一些好用的扩展 ESLint dev.env.js /src/router/index.js mock 假数据页面 axios 连接后台真数据 正式环境部署 前端完整代码 参考: 说实话都是逼出来的,对于前端没干过ES6都不会的人,vue视频也就看了基础的一些但没办法,接下来做微服务架构,前端就用 vue,这块你负责....说多了都是泪,脚手架框架布了都没看过干就完事,不过好在做好了,这里写下给和我一样苦逼的同

  • kesion科讯V4.0管理员Key工具

    操作说明,请仔细阅读操作说明后进行操作: 1.请把压缩包中的key.asp文件上传到KesionCMS根目录下. 2.运行key.asp后选择您所需要的选项. 3.注意:使用完毕后请点击"删除Key文件"或在FTP中删除key.asp文件以防留有后门. 4.功能简介: A 在删除了所有管理员情况下,新建管理员帐号. B 修改后台管理员的登录名称和密码. C 商业用户注册码修改. 复制代码 代码如下: <%@LANGUAGE="VBSCRIPT" CODEPAG

  • 无法启动.NET Framework NGEN v4.0.30319_X86服务的解决方法

    无法启动 Microsoft .NET Framework NGEN v4.0.30319_X86服务..导致快速存储技术不无自动启动 .NET Runtime Optimization Service (clr_optimization_v2.0.50727_64) - Tried to start a service that wasn"t the latest version of CLR Optimization service. Will shutdown(glory69 ) 小昕:快

  • IIS7使用.NET Framework v4.0运行库报500错误的解决办法

    故障说明:1)Windows Server 2008 R2环境下安装的IIS7.52)安装.Net4.53)运行网站,报500错误:检查了webconfig等代码,没有问题 解决办法:重新注册.Net4.5,过程如下:一.开始,查找框中输入cmd字眼,然后出现cmd.exe应用程序二.cmd.exe上右键,选择用管理员身份来运行. 三.往命令行窗口中粘贴以下命令,回车,完成注册. 复制代码 代码如下: "%WINDIR%\Microsoft.NET\Framework\v4.0.30319\as

  • Vue2.0 给Tab标签页和页面切换过渡添加样式的方法

    使用vue-router构建单页应用时,如何给当前页面的标签页添加样式呢? 1.在app.vue文件中你的nav中添加路由地址 2.依然在app.vue文件中,添加样式 不用在任何位置加class,只要在css中写上这个名称,样式自己随意改. 如何在单页切换的时候添加过渡? 1.在app.vue文件中,将router-view包裹在transition中,transition加个name. 2.在app.vue中添加css样式(你的transition的name是什么,第一个单词就是什么) 以上

  • Sublime Text v4.0(4143)安装方法

    版本Sublime Text v4.0(4143) 所需软件 Sublime Text v4.0(4143)下载地址:https://www.sublimetext.com/download_thanks?target=win-x64010 Editor下载地址(其他十六进制编辑器也可以) http://xiazai.jb51.net/202302/yuanma/EditorWin64Installer_jb51.rar 破解方法 安装软件找到软件安装位置,找到sublime_text.exe将

  • 优化Docker镜像安全性的12个技巧总结

    目录 1前言 2避免泄露构建密钥 多阶段构建 BuildKit的密钥 题外话:不要推送在开发机上构建的镜像 3以非root用户身份运行 4使用最新的基础镜像构建和更新系统包 背景知识 6对你的镜像进行漏洞扫描 7扫描你的Dockerfile是否违反了最佳实践 8不要对DockerHub使用Docker内容信任 9扫描你自己的代码是否有安全问题 10使用docker-slim来删除不必要的文件 11使用最小的基础镜像 12使用受信任的基础镜像 背景知识 13测试你的镜像是否能在降低能力的情况下工作

随机推荐