首 页 网络编程
网页制作 图形图象 操作系统 冲浪宝典
软件教学 认证考试

网络安全 网络办公 行业资讯 评测对比
您当前位置:站长天空 -> 操作系统-> Linux教程
ASP讲座之十一:结束语——给您一些建议-ASP教程,性能优化
作者:网友供稿 点击:20
推荐
西部数码-全国虚拟主机10强!20余项虚拟主机管理功能,全国领先!第6代双线路虚拟主机,南北访问畅通无阻!可在线rar解压,自动数据恢复设置虚拟目录等.免费赠送访问统计,企业邮局.Cn域名注册10元/年,自助建站480元起,免费试用7天,满意再付款!P4主机租用799元/月.月付免压金
站内搜索
文章页数:[1] 
一、 有关asp页面及代码的优化
1.尽量用!--#include file指令替代框架结构。
以前比较流行的一种设计模式就是使用一个框架(frame)放置网站的目录结构,在另外的框架中显示内容,这样的设计思路是必不可少的,但却会影响到网站性能。在具体实现方式上,完全可使用!--#include file指令来设计一个导航条,至于include的使用,早在讲座一中就已经举例说明。

2.尽量不要让来访者在毫无变化的等待中消磨时光。
不要使用这样的方式,先进行处理,然后再将处理结果输出到页面,造成在处理的这段时间内,客户端页面没有任何变化。一个再有耐心的人也会因此而感到无比懊恼,应该尽量采用边处理,边输出的方式。其实我们在讲座八中介绍的分页显示技术就是这个道理,下面再举一个例子。
代码一(先处理后显示):
<table width=”100”>
<% while not rs.eof %>
<tr>
<td><%=rs(“name”)%></td>
<td><%=rs(“email”)%></td>
</tr>
<% rs.movenext
wend %>
</table>
代码二(边处理边显示,处理一条,显示一条):
<% while not rs.eof %>
<table width=”100” border=0>
<tr>
<td><%=rs(“name”)%></td>
<td><%=rs(“name”)%></td>
</tr>
</table>
<% rs.movenext
wend %>

3.避免使用session变量,尤其是在页面之间使用session变量。
   使用会话变量会降低效率,原因在于不仅需要为每位访问者创建一个变量,而且直到访问者离开20分钟后(默认timeout设置),会话变量所占内存才会被释放。

4.不要盲目使用数据库
初学者往往对数据库有所心得之后,动不动便使用数据库,一来可以温故,二来展示一下自己的数据库技术。我的建议是可以用别的方法时最好少使用数据库,访问数据库总要消耗服务器资源。例如你可以使用文本文件,此外,对一些不大改变而又经常使用的数据,可使用application对象将数据存放在数组变量中,从内存中获取数据要比从数据库中快得多。

5.使用option explicit强制声明变量。这可以提高asp脚本执行效率,并且减少脚本出错的可能性,应该养成一个良好的习惯。

6.尽可能使用用dim定义的局部变量。访问局部变量比访问全局变量或未声明的变量要快得多。

7.html代码和asp代码最好不要频繁交叉,尽量使asp代码或html代码连成片,以提升脚本运行效率(这跟打游戏的道理差不多)。
如果你是在代码中的好几个地方用<%=...%>格式书写输出结果,那么考虑一下把这些结果合到一块,用一个response.write语句写出来,如讲座二中的例wuf9.asp。不要把html代码和vbscript脚本散布得太开,尽量写成成块的html和vbscript脚本。

8.适当使用绝对路径
如果可能的话尽量避免使用相对路径,而使用绝对路径。使用相对路径将需要iis返回当前服务器路径,这就意味着对iis的特殊请求造成执行速度低下。不过话说回来,慢是慢了点,然而使用相对路径可以大大增强程序的灵活性和可移植性,关键在于恰当的处理这对矛盾。

9.asp脚本性能测试
你可以使用一些工具软件测试你的asp脚本执行所花时间,尤其是觉得该脚本有问题时。这里提供几个,具体用法请看帮助。
(1) microsoft的inetmonitor工具:用来监控和测试整个网站的处理能力。下载地址:http://www.microsoft.com/siteserver/site/deployadmin/inetmonitor.htm。
(2) microsoft的web capacity analysistool(wcat)。包含在microsoft backoffice resource kit光盘中,或者也可以去microsoft网站下载。
(3) softwing的asp profiling component,下载地址:http://www.softwing.com/iisdev/profiler/。

二、 有关数据库性能的优化
1.用直接将数据库绑定到ole db的驱动程序,而不通过odbc。关于这一点,详见讲座六。

2.尽量使用系统默认的游标(cursortype)和上锁(locktype)类型,尤其要避免使用动态游标。

3.适当使用存储过程存储过程比查询字符串的效率高,使用起来要方便得多,好处多多。

4.及时释放资源,例如尽早的释放对象、关闭连接等。

5.数据库性能测试
(1) 测试sql查询的速度,可以使用microsoft isql/w(microsoft sql server6.5)或microsoft query analyzer(microsoft sql server7.0),它们可显示执行的每个步骤及所需时间。
(2) microsoft sql server7.0的profiler,可以跟踪对数据库服务器上执行的查询的监控。例如,可以跟踪记录运行最慢的查询或是最经常导致数据库死锁的查询。

三、 另外几个问题
1.其他可选的asp开发平台
此前我们所讲的asp脚本均是在microsoft系列平台上创建的,除此以外,你还可以选择chili!asp来运行asp,它的突出优点是在windows nt和unix平台上均可以使用。主页地址:http://www.chilisoft.com/。

2.关于<% @language=vbscript%>
此前我们所遇到的所有asp脚本,开头第一行代码基本上都是<% @language = vbscript%>,这表明这一页的asp脚本所使用的脚本语言为vbscript,实际上,在asp中还可以使用jscript、perlscript等其他脚本语言。
在asp中,你可以设定整个web站点使用一种脚本语言(如vbscript,这也是iis的缺省设置),而对某一个特定页面使用另一种脚本语言(如jscript),甚至于对某一个页面的某一个函数使用另一种脚本语言。下面我们举一个实例:
(1) 如何设定整个web站点所使用的脚本语言。
运行ism(internet service manager)→右键击网站名,选择properties→选择home directory选项卡→单击configuration按钮→选择application configuration对话框中的app options选项卡→在default asp language文本框中输入vbscript或jscript即可。
(2) 例程wuf99.asp
<% @language = perlscript %>
<html>
<head><title>bye</title></head>
<body>
<%
  $response->write(
    sprintf( "ip address = %s",
      $request->servervariables(
        "remote_addr" )->item ) );
%>

<script language="jscript" runat="server">
function saybye()
{
response.write("再见!")
}
</script>

<script language="vbscript" runat="server">
for i=1 to 3
saybye()
next
</script>

</body>
</html>
注意:你可以在asp中自由的使用vbsript或jscript,因为microsoft支持这两种(ie支持netscape的javascript,并将其发展为jscript,而netscape却不支持vbscript,这恐怕也是netscape先发后至,microsoft官司缠身的原因之一),但是要使用perlscript,必须另外安装perl脚本语言环境。推荐使用activeperl,在windows nt上安装非常方便,下载地址:http://www.newhua.com.cn/activeperl.htm。

3.一个不错的asp设计实例
网上有很多asp的实例,主要集中在留言本、聊天室、新闻发布和bbs等,这里向大家推荐一个用asp设计的bbs系统——free bbs,下载地址为:http://free_bbs.soim.net/。

到这里,asp系列讲座就要告一段落了,但仍然还有很多问题没有涉及,如windows2000与iis5.0、asp的安全问题以及其他一些与iis或nt有关的概念(windows dna、mts、msmq)等等……,如果有机会,以后大家还可在这里见面,这一次,再见!

文章整理:站长天空 网址:http://www.z6688.com/
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

文章页数:[1] 


放大字体显示 缩小字体显示 打印文章 推荐给朋友
热门文章
·最简单的Struts程序-JSP教程,资料/其它
·利用激光供电的光电电流互感器
·java到structs-JSP教程,Java技巧及代码
·鼠标样式,整体背景图,滚动条的效果(网页效果)-ASP教程,ASP应用
·ASP中正则表达式的应用-ASP教程,正则表达式
·XML应用-利用XML 与XSL-.NET教程,XML应用
·.net 下用javascript调用webservice-.NET教程,Web Service开发
·Asp无组件上传进度条解决方案-ASP教程,组件开发
·破译动网验证码的简单方法-.NET教程,评论及其它
·linux系统文件命令精通指南(上)
最新文章
·mashups+ajax打造全新web开发_ajax教程
·windows vista系统中写字板应用全攻略_windows vista
·adsense单价持续低迷的解读_网赚技巧
·google反作弊小组成员专访_站长访谈
·端午议话:谈网站的特色_站长心得
·浅谈我的十点论坛管理经验_站长心得
·如何针对msn的onpage进行网页优化_站长心得
·用google 搜索框黏住易变的访问者_google推广
·google关键词广告每次点击付费(ppc)术语表_google推广
·确保万无一失的google 关键词广告公式_google推广
相关主题
  • ASP讲座之十:自己动手编写组件-ASP教程,组件开发
  • ASP讲座之九:ASP与数据库(四)-ASP教程,数据库相关
  • ASP讲座之八:ASP与数据库(三)-ASP教程,数据库相关
  • ASP讲座之七:ASP与数据库(二)-ASP教程,数据库相关
  • ASP讲座之六:ASP与数据库(一)-ASP教程,数据库相关
  • 西部数码虚拟主机

    友情链接
    CNNIC 西部数码
    万网 自助建站
    虚拟主机 asp空间
    域名注册 域名
    域名申请 主页空间
    论坛空间 网站空间
    国际域名 虚拟空间
    空间租用 DDOS防火墙
    成都主机托管 四川主机托管
    主机租用 服务器租用
    网站目录 自助建站
    虚拟主机 网址大全
    软件下载
    自助链接
    虚拟主机资讯 特价虚拟主机
    版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!
    关于我们:站长天空:专业提供最新的站长资讯、在线教程、虚拟主机权威评测、虚拟主机性能对比、网站制作教程,开发教程,站长工具。包括网页制作教程、冲浪宝典、编程参考、操作系统、软件教学、行业动态等。
    特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
    发表评论 打印  刷新     关闭