提高ASP效率的五大技巧

技巧之一:提高使用Request集合的效率 

  访问一个ASP集合来提取一个值是费时的、占用计算资源的过程。因为这个操作包含了一系列对相关集合的搜索,这比访问一个局部变量要慢得多。因此,如果打算在页面中多次使用Request集合中的一个值,应该考虑将其存贮为一个局部变量。

  例如将代码写成下面的形式以加快脚本引擎处理速度:

复制代码 代码如下:

strTitle=Request.Form("Title")

strFirstName=Request.Form("FirstName")

strLastName=Request.Form("LastName")

If Len(strTitle) Then strTitle=strTitle & " "

If strFirstName="" Then strFullName=strTitle & " " & strLastName

Elseif Len(strFirstName)=1 Then

strFullName=strTitle & strFirstName & ". " & strLastName

Else

strFullName=strTitle & strFirstName & " " & strLastName

End If

技巧之二:直接访问适当的集合 

  如果不是别无选择,否则不要使用strPage=Request("page")的这样的形式来获取参数,因为这将按顺序搜索全部的集合—QueryString、Form、Cookies、ClientCertificate、ServerVarible直到发现第一个匹配值的名称。这样做比直接访问适当的集合效率低,并且是不安全的,除非能绝对保证这个值不会出现在另外一个集合中。

  例如,可能希望搜索满足客户请求的WEB服务器名称,这通过出现在每个查询中的Request.ServerVarables集合中寻找“SERVER_NAME”来实现。然而,假如其他的集合也包含名为“SERVER_NAME”的值(键名不区分大小写),当使用Request("server_Name")时,就会得到错误的结果。总而言之,应尽可能直接访问适当的集合。 

技巧之三:在费时操作前使用Response.IsClientConnected属性 

  使用Response.IsClientConnected是观察用户是否仍连到服务器并正在载入ASP创建的网页的有用方式。如果用户断开连接或停止下载,我们就不用再浪费服务器的资源创建网页,因为缓冲区内容将被IIS丢弃。所以,对那些需要大量时间计算或资源使用较多的网页来说,值得在每一阶段都检查游览者是否已离线:

复制代码 代码如下:

…… Code to create first part of the page

If Response.IsClientConnected Then

Response.Flush

Else

Response.End

End If

…… Code to create next part of page

技巧之四:优化ASP中的ADO操作 

  通常面言,数据构成了WEB站点的实际内容。所以,优化ADO操作以加速ASP代码执行,十分有用:

  a. 仅选择所需的列:当打开ADO记录集时,除非需要获得所有的列,否则不应自动地使用表名(即SELECT *)。使用单独的列意味着将减少发送到服务器或从服务器取出的数据量。即使需要使用全部列,单独地命名每个列也会获得最佳的性能,因为服务器不必再解释这些列的名字。 

  b. 尽可能的使用存储过程。存储过程是预先编译的程序,含有一个已经准备好的执行计划,所以比SQL语句执行更快。 

  c. 使用适当的光标和锁定模式。如果所做的全部工作只是从记录集中读取数据,并将其显示在屏幕上,那么就使用缺省的只能前移、只读的记录集。ADO用来维护记录和锁定的细节的工作越少,执行的性能就越高。 

  d. 使用对象变量。当遍历记录集时一个肯定能提高性能的方法是使用对象变量指向集合中的成员。例如:

复制代码 代码如下:

While Not RsGc.EOF

Response.Write "工程名称:" & RsGc("GcMC") & "(工程代码:" & RsGc("GcCode") & ") "

RsGc.MoveNext

Wend

可以用改写为下面的代码以加快执行:

复制代码 代码如下:

set GcMc=RsGc("GcMc")

set GcCode=RsGc("GcCode")

While Not rsGc.EOF Response.Write "工程名称:" & GcMc & "(工程代码:" & GcCode & ") " RsGc.MoveNext

Wend

新的代码建立了对象变量的引用,所以可以使用对象变量而不是实际的变量,这意味着脚本引擎的工作减少了,因为在集合中进行索引的次数变少了。

技巧五:不要混用脚本引擎 

  我们知道,ASP页面中既可以使用VBScript,也可以使用JScript。但是在同一个页面上同时使用JScript和VBScript则是不可取的。因为服务器必须实例化并尝试缓存两个(而不是一个)脚本引擎,这在一定程度上增加了系统负担。因此,从性能上考虑,不应在同一页面中混用多种脚本引擎。

时间: 2024-10-22 13:05:05

提高ASP效率的五大技巧的相关文章

提高ASP效率的五大技巧_应用技巧

技巧之一:提高使用Request集合的效率  访问一个ASP集合来提取一个值是费时的.占用计算资源的过程.因为这个操作包含了一系列对相关集合的搜索,这比访问一个局部变量要慢得多.因此,如果打算在页面中多次使用Request集合中的一个值,应该考虑将其存贮为一个局部变量.  例如将代码写成下面的形式以加快脚本引擎处理速度:  复制代码 代码如下: strTitle=Request.Form("Title") strFirstName=Request.Form("FirstNam

提高ASP应用程序的技巧(2)

程序|技巧     (2)如果你正在使用的是VBScript 5.0或更高的版本,你可以使用WITH--END WITH的结构,这样也能使ASP的性能提高不少.     (3)一般情况下,避免使用session变量,因为每一个session变量都占用一个线程,session调用是一个接一个的完成的.所以这样会降低ASP的速度,你可以使用QueryString集合或者隐藏的变量来代替session变量来存储数据.这样会比使用session变量占用的线程少.    (4)如果你实在无法避免使用ses

提高ASP应用程序的技巧

ASP是微软推出的一种服务器端命令执行环境,它可以使你轻松的制作交互式的WEB应用程序.作为目前NT平台上开发WEB服务器的一种使用最多的技术,它的出现取代了过去只有使用CGI技术才能做的许多事情,而且ASP对于数据库的控制简单有效,省去了CGI的大量编程工作. 由于ASP直接对服务器进行操作,因此,ASP设计的技巧就显得非常重要,不当的ASP应用程序会增加WEB服务器的负担,降低服务器的性能.我总结了一年来自己ASP设计的经验,希望能对大家有所帮助,不对的地方希望大家指正. 本文讨论的主要是A

提高ASP应用程序的技巧(1)

程序|技巧     ASP是微软推出的一种服务器端命令执行环境,它可以使你轻松的制作交互式的WEB应用程序.作为目前NT平台上开发WEB服务器的一种使用最多的技术,它的出现取代了过去只有使用CGI技术才能做的许多事情,而且ASP对于数据库的控制简单有效,省去了CGI的大量编程工作.     由于ASP直接对服务器进行操作,因此,ASP设计的技巧就显得非常重要,不当的ASP应用程序会增加WEB服务器的负担,降低服务器的性能.我总结了一年来自己ASP设计的经验,希望能对大家有所帮助,不对的地方希望大

Windows 7中提高工作效率的小技巧

Win7系统为我们提供了优秀的系统性能.丰富强劲的功能还有精美绚丽的界面,并且精心设计了不少实用方便的快捷功能.对于经常出差或者整天面对电脑忙忙碌碌需要演示.打印和处理大量文档的公司白领们,Win7系统更是提供了很多适合办公应用的功能,可以有效地提高工作效率.下面我们介绍几个办公常用的Win7应用,白领们不妨试试这些高效工作小妙招. 快速切换投影模式 Win7系统为电脑外接投影仪提供了一个非常有用的快捷键"Win+P",可以轻松切换投影模式:按住"Win"键,再多次

ASP提速的五大技巧

技巧 技巧之一:提高使用Request集合的效率 访问一个ASP集合来提取一个值是费时的.占用计算资源的过程.因为这个操作包含了一系列对相关集合的搜索,这比访问一个局部变量要慢得多.因此,如果打算在页面中多次使用Request集合中的一个值,应该考虑将其存贮为一个局部变量. 例如将代码写成下面的形式以加快脚本引擎处理速度: strTitle=Request.Form("Title") strFirstName=Request.Form("FirstName") st

可提高工作效率的OE技巧三则

http://www.aliyun.com/zixun/aggregation/33954.html">Outlook Express 6.0(以下简称OE)是一个免费的电子邮件客户端工具,许多 网友将其作为上网处理邮件的 首选工具.但绝大多数只是习惯使用它的一些基本功能,如果在此基础上能挖掘出一些精彩实用的技巧,则会收到事半功倍的效果. 1. 关闭启动OE时的"拨号连接" 通过拨号上网的朋友,每次启动OE,系统总是 首先弹出"拨号连接" 对话框.

Sublime Text 3 提高工作效率的使用技巧

Sublime Text 3对于Sublime Text 2压倒性的优势就是秒启动,启动非常非常快,所以从2012年到2016年我一直用Sublime Text 2,但是安装了3并且启动试用后,我再也不愿意打开Sublime Text 2了.   工欲善其事,必先利其器.经过多年使用,总结了一些Sublime Text的使用技巧.   一.常用的使用技巧.   0.Ctrl + P 匹配项目中的文件,然后快速跳转到文件中.找到对应文件后,还可以在完整的文件名后通过输入跳转到更精确的位置:    

vs.net 2010 扩展插件小结 提高编程效率_实用技巧

注:有些插件需要vs.net professional或更高的版本. 进入正题,打开vs.netàToolsàExtension Manager-如下图: 单击Extension Manager进入vs.net插件管理,如下图所示: 这里面会列出已安装的插件.网上其他插件和插件更新. 在Installed Extensions中,我们可以禁用(Disable)和卸载(Uninstall)安装过的插件. 在Online Gallery中,单击选中一款未安装过的插件(如下图): 然后可以看到一个Do