提高ASP页面的执行效率

http://xue8.net 2006-10-4 15:10 来源:学吧
文章来自于【学吧】http://xue8.net/program/view.asp?ArticleID=1171
  导言
  
  改善程序性能是一件很微妙的事情。尤其是和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程序,对待不同的程序要采用不同的策略。最后希望以上的本文能对您有所帮助。

发表评论

用户名:
密 码:
匿名评论
请发表评论时遵纪守法并注意语言文明!
验证码:
用户名
评论内容
目前尚无评论!