思维工作室
我们为此而努力:网站制作和网站优化!

提高ASP站点的运行性能

  目前国内的中小型企业网站,大多采用以ASP为动态角本的语言。下面一些方法可有有效改善ASP程序在服务器的运行效率从而提高网站打开的速度,增强网站的浏览体验。 

一. 数据库的优化方法  

  我们使用ASP最主要的用途就是对数据库进行操作下面几点需要注意的地方: 

1. “SELECT  *  ......”  与“SELECT  id,name ......”  

  请尽量拾取你所需要的那些字段,比如,一个Table中有10个字段,但是你只会用到其中的一个字段,就要使用“select name from yourtable”,而不是“select * from table”。你或许会说,我是这么做的阿,但是,如果一个table中有50个字段,你需要用到其中的23个字段的时候,你会怎么做呢?为了节省打字以及查找对应字段名称的麻烦,你就不一定会老老实实的用“select name,sex,age... from yourtable”了吧!  

  实际证明,拾取你所需要的那些字段来使用select语句将会是你的ASP程序至少加快5%左右。  

2. MS SQL Serverz要尽可能使用系统存储过程 

  有的时候完成一个读取操作,使用SQL语句和存储过程同样可以完成,但是使用存储过程将会大大加快完成读取操作的速度,也就提高了你的ASP程序运行的速度。  

3. 注游标使用方法  

  如果你仅仅是对一个table进行读取操作,那么请你使用forward-only,read-only游标,因为这种游标读取数据库是最为快速的,尤其是你的读取数据量很大的情况下。  

4. 不要打开无用的独立记录集  

  也许你在笑了,我会打开没有用的记录集吗?是的,你当然会,比如在生成一个树型记录集的时候,你不得不打开父记录集以及对应的子记录集,甚至还有孙记录集,其实你可以使用ADO提供的Data Shaping技术来替代打开多个独立的记录集,那样会加快程序的运行速度。(关于Data Shaping的用法可以参考ADO帮助)  

5. 一定要记着关闭打开的记录集对象以及连接(Connection)对象  

  有些朋友总是奇怪为何自己的ASP程序刚开始的时候运行速度很快,可是多运行几遍就越来越慢了呢?甚至出现服务器死机的情况。发生这种情况,就很可能是你打开了太多的记录集对象以及连接(Connection)对象而最后却没有关闭他们引起的。使用如下方法进行关闭:  

YourRecordSet.close  

Set YourRecordSet=Nothing  

Set YourConnection=Nothing  

  
二. 有关ASP内置对象使用方面的优化方法  
1. 尽量减少Session对象和Application对象的使用

  虽然ASP中提供的这两个对象对我们的编程提供了很大的帮助,但是,对这两个对象要合理的使用,不要滥用。因为大量的使用这两个对象将会极大的增大服务器的负担,严重消耗系统资源。也将使你的ASP程序运行慢如老牛。  

2. 要及时的关闭不再使用的对象(尤其是Session和Application)  

  不及时的关闭你所使用的对象会导致系统运行速度变得缓慢。也许你会问,  
Session和Application不是可以自动消失的吗?完全正确,系统默认30分钟内用户如果没有任何操作就自动触发Session_OnEnd和Application_OnEnd事件,但是大量的用户频繁的读取服务器,服务器将在很长的一段时间保持那些已经没有用的  
Session,Application对象,如果不及时关闭使用完的Session和Application后果将不堪想象了。  

关闭的方法是:  

   Set 对象=Nothing  

三. 合理使用Include文件  

  我们这里说的是指用<!--#include file="xxx"-->形式包含进来的文件,并且文件内容全是ASP程序,也就是说你将一些公共的函数放到一个文件中,并在其他有可能调用其中函数的页面包含进来。  

建议你不要将所有的函数放到一个包含文件中,因为你在其他页面包含这个文件的时候,服务器端是要进行预编译的,很可能在一个包含文件里面有上百个函数,而你只是想要使用其中的一个函数,这样就得不偿失了。所以,尽可能的分割你的包含文件成为多个小的包含文件。这样也可以提高程序的运行速度哦。  

四. 其他方面的优化方法  
1. 在ASP文件中尽量使用<%%>嵌入到HTML标签中,而不要使用Response.write的方式,比如:  
<html><body>  
<%If ok =1 then %>  
  Hello! World!  
<%End If%>  
</body>  
</html>  
就远远比:  
<%  
Response.write "<html>"  
Response.write " <body>"
            If ok =1 then  
  Response.write "Hello! World!"
            End If  
Response.write " </body>"  
Response.write "</html>"  
%>  
的运行速度要快,尤其是你的ASP文件比较大的情况下。因为,第二种方式增加了服务器端的解释时间,因而也就降低了ASP程序的性能。  

2. 尽量用一个ASP文件完成一个动作  

  很多人喜欢在一个ASP程序中同时完成诸如添加,删除,查找等等多个动作,不要认为这样是有效的利用了文件,相反,这样做的结果是使得应用程序的运行速度减慢很多。  

应当将添加,删除,查找等分割成单个的独立的ASP文件来完成。这样使得文件不会过于庞大,降低服务器端解释执行的负担,并且阅读程序也很快捷。  

  经过上面几种方法的改善使你的网站在服务器上高效率的运行。

http://www.ytsiwei.com/blog/website/aspedit.html
发表于 思维 时间 2008-4-22 相关评论 0 (条), ? hits. [网站制作]



工作室公告 思维工作室
WebMaster[A]YTSiwei.com 文章目录
随机文章 最新评论 Menologies 资源
Writings[] Reviews[] Sitemap.xml Codenamed:YunY baidu搜索 google搜索
瞧瞧的BLOG点石互动