[如何提高自己]提高ASP效率的五个技巧

更新时间:2020-08-01 来源:学校工作计划 点击:

【www.d9bd.com--学校工作计划】

  技巧之一:提高使用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则是不可取的。因为服务器必须实例化并尝试缓存两个(而不是一个)脚本引擎,这在一定程度上增加了系统负担。因此,从性能上考虑,不应在同一页面中混用多种脚本引擎。

[提高ASP效率的五个技巧]相关文章:

1.五个方法提高孩子学习效率

2.提高学车效率的技巧

3.提高工作效率20个技巧

4.提高学习效率的小技巧

5.财务人员提高财务报账效率的五个方法

6.提高教学效率

7.帮助孩子提高做题效率

8.提高职场工作效率法宝

9.提高工作效率方法

10.怎么提高课堂效率

提高ASP效率的五个技巧

本文来源:http://www.d9bd.com/jiaoxueziyuan/61685/

为您推荐

2023年秋季学校工作计划精选四篇

工作计划是个人或组织提出的一定时期内的工作所要达成的目标以及实现目标的方案与途径。工作计划实际上有许多不同种类,它们不仅有时间长短之分,而且有范围大小之别。下面是小编为大家整理的2023年秋季学校工作计划精选四篇,欢迎大家借鉴与参考,希望对大家有所帮助。

2023-12-01 12:25:27   学校工作计划2023年秋季计划   初中学校工作计划2023年秋季  

教育信息化学校工作计划(合集九篇)

工作计划是个人或组织提出的一定时期内的工作所要达成的目标以及实现目标的方案与途径。工作计划实际上有许多不同种类,它们不仅有时间长短之分,而且有范围大小之别。今天以下是小编整理的教育信息化学校工作计划(合集九篇),仅供参考,希望能够帮助到大家。

2023-11-29 16:52:06  

家长学校工作计划范文十四篇

家长,旧称一家之主,指父母或其他监护人。一般指未成年人的父母或监护人(自然人)。一般指父母或者其他监护人或者孩子的长辈。其并非法律术语,学校常见称呼,但与法律上的监护人或法定代理人的范畴比较近似,属于监护人或法定代理人的一部分。以下是小编为大家收集的家长学校工作计划范文十四篇,仅供参考,欢迎大家阅读

2023-11-29 16:51:48  

2022学校工作计划【14篇】

工作计划是,对一定时期的工作预先作出安排和打算时,工作中都制定工作计划,工作计划实际上有许多不同种类,它们不仅有时间长短之分,而且有范围大小之别。以下是小编收集整理的2022学校工作计划【14篇】,仅供参考,希望能够帮助到大家。

2023-11-29 16:51:36  

学校工作计划月安排锦集七篇

教师的职业是神圣的,加强师德建设,提高师德素质极为重要,师德作为社会道德体系的组成部分,是规范、约束教师的职业行为重要准则。以下是小编整理的学校工作计划月安排锦集七篇,仅供参考,希望能够帮助到大家。

2023-11-29 16:51:17   学校工作计划安排表