提高ASP页面的执行效率

导言

  改善程序性能是一件很微妙的事情。尤其是和INTERNET相关的程序,像ASP程序,制约其性能的因素很多,像WEB服务器、TCP/IP网络和数据库服务器等。这些大都是与硬件相关。其实在软件上,好的程序设计的方法和正确的参数配置也可以提高程序的性能,有时在同等情况下只要改变一个参数,程序执行效率就能大大提高。本文就试着在这方面做些探索。

  一.影响性能的因素

  ASP程序运行的性能主要决定于以下2个大方面:

  1.HTML页面的执行效率

  2.反应时间,其中反应时间主要受制于下面要素:

  (1).ASP页面的执行效率

  (2).数据库因素

  下面我们就来详细讨论一下。

  二.详细讨论

  1.影响HTML的因素

  HTML页面的执行效率是一个纯客户端的问题。影响这个问题的因素主要是客户端的硬件和他的网络带宽。除此之外,还有些下列因素也可以影响HTML页面的执行效率。

  (1).图象因素。在HTML的页面尽量避免使用图象。这是因为当浏览器请求一个页面时,如果页面包含N个图象,这将使的浏览器要向WEB服务器请求N次调用。而这种请求会降低页面的加载进程。进而影响速度。

  (2).框架问题。在网页里面使用框架同样也会降低页面的加载进程,和图象因素相似,加载一个N个框架也需要请求N次。

  (3).表格问题,尽量避免使用表格,尤其是尽量避免使用多重表格,繁杂的表格会影响HTML的执行效率。

  (4).去除多余的标记符,让我们来看看下面的例子:

Body><br
P><font face="Verdana" size="4"><br
/font></P><br
P><font face="Verdana" size="4"><br
/font></P><br
P><font face="Verdana" size="4"><br
/font></P><br
/Body><br
你可以去掉 font>标记符,如下:
Body><br
font face="Verdana" size="4"><br
P><br
/P br
P br
/P><br
P br
/P><br
font /Body><br

  (5).减少注释,这将会减少文件的大小。进而提高加载速度。

  (6).避免使用长文件名,并且在页面里尽量使用相对路径访问其他文件。

  (7).HTML页面里面尽量避免使用Java Applets。例如,如果你想使用Java Applets来处理动画,那么你可以考虑用GIF文件或者是FLASH来代替,而这将比Java Applets快很多。

  2.影响ASP的要素

  (1).尽量把对象变量转换成本地变量,因为读本地变量比读对象变量要快许多。

  比较慢的例子:

if Myobj.Value = 0 then
 Do something
elseif Myobj.Value
0 then
 Do something
elseif Myobj.Value
0 then
 Do something
end if

  比较快的例子:

MyVar = Myobj.Value
if MyVar = 0 then
 Do something
elseif MyVar
0 then
 Do something
elseif MyVar
0 then
 Do something
end if

  (2).如果你使用的是VBScript 5.0或者是更新的版本,尽量使用 With ... End With语句,这也可以提高你的程序运行速度。

  比较慢的例子:

Myobj.FirstName = "Srinivasa"
Myobj.LastName = "Sivakumar"
Myobj.City = "
Chicago"

  比较快的例子:

With Myobj
 .FirstName = "金虎"
 .LastName = ""
 .City = "滁州"
End with

  (3).就总体而言,避免使用session变量有助于提高速度,这是因为不同的ASP页面分别在不同的线程里面运行的,而session调用却不是这样的,他是连续的。

  3.数据库问题

  设计好一个数据库结构可以大大提高程序的运行速度,当然怎么设计数据库结构不是本文讨论的问题。我们先假设已经设计好了数据库结构,看看还能做些什么事情来提高程序的运行速度。

  (1).如果你的数据库服务器和WEB服务器是同一个,那么最好分开。这肯定能够提高速度。

  (2).如果你访问数据库,最好不要使用动态的SQL语句,使用存储过程或者视图。

  (3).有时分配适当的数据库buffers会提高程序的性能。这是因为,假如如果你使用的是Oracle数据库,对于每个连接都需要打开三个sessions。如果你能够处理好这些事情,你将会提高程序的性能。

  总结

  其实影响ASP程序执行速度的因素有很多,以上只是一部分。当然上面的一些技巧也不一定适合所有的ASP程序,对待不同的程序要采用不同的策略。最后希望以上的本文能对您有所帮助。