zoukankan      html  css  js  c++  java
  • ASP程序的性能优化

    好久没有写东西,今天晚上在图书馆花了2个小时写成的,希望对大家有用。

    ASP程序的性能优化

    第一章         使用服务器缓存

    1.         使用applicationsession保存数据的技巧。

    可以再程序启动或会话开始时将需要的数据赋值给applicationsession对象。使用这种方法只需要在global.asa文件的application_Onstartsession_OnStart函数中添加响应的赋值函数或语句即可。

    再合适的条件下可以缓存ADO记录本身,但是需要注意:

    l         ADO记录必须时自由线程标记的

    l         必须时已经断开的记录集

    2.         在服务器硬盘上缓存数据

    对于体积大,使用频率不是很高的数据,可以采用textxml的方式将其缓存在硬盘上。对于单个页面来说,访问数据库的速度不一定不访问硬盘的速度慢多少,但是对于大量的页面来说,这样作就可以减少服务器对数据库的访问压力,同时对于数据库中的那些需要大量缓存的存储过程来说,更是一件优化的好方法。

    Aspcom提供了几个基于磁盘缓冲的配置工具。Ado记录集的save()和open()函数就是负责保存和掉入磁盘上的记录集。另外一下一些组件也可以达到类似的功能:

    l         Scripting.FileSystemObject:用许创建、读写文件

    l         MSXMLMicrosoft XML解析器,随Internet Explorer带来,支持和保存和装入XML文档

    l         Lookup Table对象:从磁盘掉入简单列表的很好选择。

    3.         避免在applicationsession对象中缓存非轻快型组件

    4.         不要在applicationsession对象中缓存数据库连接

    5.         合理使用session对象

    第二章         提高代码的执行效率

    1.         使用Option explicit

    asp文件中使用<%OPTION EXPLICTI%>可以提高asp代码的执行效率。打开此项有助于识别没有定义的变量,使用没有定义的变量就会出现错误提示。

    2.         避免重复定义数组

    最好在一开始就作最坏的打算,对数组的长度进行充分的考虑,尽量避免使用redim

    3.         使用dictionary对象

    vbscript中提供的dictionary对象可提供快速查找和对任意代关键字数据存储功能。通过dictionary对象可以根据关键字存取数组中的各项数据,这样就可以找到内存中不连续的内容。但是注意,如果关键字在内存中是连续的话,在数组中的查找、存储数据会更快。

    4.         避免在循环中使用字符串连接操作

    首先是重复的连续字符串消耗二次方的时间;其次是运行的时间与计算的字段数量也是平方的关系。可以使用替换字符串连接为response.write或行内脚本<%=fl.value%>的方法来提高程序的性能。如果使用的是jscript,强烈建议使用“+=”操作,而不是ssstr

    第三章         优化服务器的工作

    1.         多个response.write声明

    如果是多个结果使用<%=…%>操作,可以考虑将数据使用response.write输出

    2.         在可能的情况下,使用server.transfer替代resonse.redirect

    Server.transfer是在服务器进行页面转向的内容,并将具体的内容发送给客户浏览器,而response.redircet则使客户机自己向服务器进行请求下一个页面的内容,所以增加了网络和客户机的负担。

    3.         避免使用Server Variables

    4.         使用<object>标志创建对象

    使用server.createobject创建对象时,将立即生成一个对象,但有一些时候对象并没有使用,这样造成浪费,而使用<object>服务器并不真正的创建对象,只有当对象被使用时,对象才被创建。

    5.         可能的情况下尽量使用绝对路径

    6.         使用response.buffer

    TCP/IP在发送大的数据包时要比发送大量的小数据包效率高

    7.         在发送大量内容前使用Response.IsClientConnected来确定客户机是否连接

    8.         调整web服务器

    9.         即使升级,使用最新的版本产品

    第四章         利用浏览器工作

    使用客户端对表格进行表单的验证检查

  • 相关阅读:
    网页加速的14条优化法则 网站开发与优化
    .NET在后置代码中输入JS提示语句(背景不会变白)
    C语言变量声明内存分配
    SQL Server Hosting Toolkit
    An established connection was aborted by the software in your host machine
    C语言程序设计 2009春季考试时间和地点
    C语言程序设计 函数递归调用示例
    让.Net 程序脱离.net framework框架运行
    C语言程序设计 答疑安排(2009春季 110周) 有变动
    软件测试技术,软件项目管理 实验时间安排 2009春季
  • 原文地址:https://www.cnblogs.com/AloneSword/p/2237661.html
Copyright © 2011-2022 走看看