新客网WWW.XKER.COM:致力做中国最专业的网络学院!
模糊搜索
标题搜索
最新更新
新客商城
网站地图
RSS订阅
首页
新闻中心
网络学院
软件开发
站长之家
软件下载
手机学院
桌面壁纸
专题
论坛
学院:
操作系统
-
网络应用
-
服务器
-
网络安全
-
工具软件
-
办公软件
-
Web开发
-
数据库
-
网页设计
-
图形图像
-
媒体动画
-
硬件学堂
-
存储频道
-
QQ专区
您的位置:
首页
>
软件开发
>
Web开发
>
Asp教程
> 正文:ASP讲座之十一:结束语——给您一些建议
ASP讲座之十一:结束语——给您一些建议
新客网
XKER.COM
2005-10-26 来源:
收藏本文
一、 有关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)等等……,如果有机会,以后大家还可在这里见面,这一次,再见!
上一篇:
ASP讲座之九:ASP与数据库(四)
下一篇:
如何使用ASP生成HTML文件
【
收藏
】 【
评论
】 【
推荐
】 【
投稿
】 【
打印
】 【
关闭
】
最新相关文章
·
ASP+ACCESS数据库中文乱码问题解决
·
编程实例 字母+数字验证码程序
·
ASP连接数据库错误解决办法新法
·
初学:ASP内建对象Response
·
ASP网站Server object error的解决办法
·
ASP技巧:让Len,Left,Right函数识别中文
·
把网页中的电话号码生成图片的ASP程序
·
ASP如何实现IE地址栏参数的判断
·
细化解析:ASP连接11种数据库语法集锦
·
ASP实现网页打开任何类型文件都保存
·
ASP代码直接增加、删除ACCESS表和字段
·
ASP:判断访问是否来自搜索引擎的函数
·
ASP技巧:禁用页面缓存的五种方法
·
学习ASP关于与变量子类型相关的函数
·
ASP开发中的(VBScript)类基础学习
·
ASP访问Excel文件
发表评论
(
要记得去论坛讨论,点击注册新会员
)
匿名评论
评论内容:不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
阅读排行
使用bcdedit 更改windows vista 的启动顺序
Session丢失问题解决方案
NTFS文件系统的安全属性
在DataGridView中获得DataGridViewCheckBoxColumn
asp http 500 - 内部服务器错误 请求的资源在使用
windows内核初窥(一)------体系结构
WIN32下DELPHI中的多线程【线程的调度】(二)
一种Windows下线程同步的实现方法
windows内核初窥(二)-----系统机制
WIN32下DELPHI中的多线程【变量存储】(三)
【最新】IP 地址分配表(14)
关于DataGridView中如何接收处于编辑状态下的当前
Microsoft Internet Transfer Control 使用简介(
[小技巧]winfrom使用多线程
八大法则杜绝ASP网站漏洞入侵
专题教程
非主流Ps教程
磁碟机病毒专杀
AV终结者
会声会影教程
nero教程
FreeBSD使用大全
PDF阅读器
BT下载
QQ防骗术案例剖析
机器狗病毒查杀专题
搜狗拼音输入法专题
google earth专题
随机推荐
转帖一个忘了出处的精华[MD5加密的javascript实现
自定义DataGrid分页设置
正则表达式简介(4)
经常看见有人问能不能实现这个效果:下拉选框中输
程序员的七种武器(转)
创建有个性的对话框之MFC篇(一)
将ACCESS转化成SQL2000需要注意的几个问题
用asp怎样编写文档搜索页面(3)
ASP Forum2.0学习笔记之二---了解Master Pages库
NT Fan:你要的bbs的数据结构和存储过程(二)
LINE9的目录浏览源程序
Asp编码优化技巧8则(转)
转换字符串单词的第一个字母为大写
一段窗口自动关闭的源代码,不受js打开的限制,与
不用组件实现上载功能(英文NT)2
实用信息推荐
常用网页广告代码全集
中国电子地图
IP查询、IP签名
免费代理IP(每日更新)
免费周公解梦大全
html互转JS
FLASH休闲小游戏
flash动画
qq搞笑表情
最新电影大片
戴尔dell笔记本电脑订购
戴尔dell台式机电脑订购