逍遥一派 发表于 2015-1-16 22:09:25

ASP教程之完整优化ASP程序功能

ASP最大的缺点在于网络的安全性和可靠性,企业将经营数据放在开放的平台上,最大的担忧就是如何保证这些数据不被其他人破坏。  ASP自己并非一种剧本言语,它只是供应了一种使镶嵌在HTML页面中的剧本程序得以运转的情况,而在ASP中最经常使用的剧本言语就是VBScript了。固然ASP的剧本言语很复杂,可是要想让一个ASP程序可以最优化的运转也不是一件复杂的事变。

  如今国际的收集带宽很无限,收集非常拥堵,怎样使得本人的ASP使用程序可以疾速的运转就成了每个ASP程序员的妄想了。那就跟从我来一同减速你的ASP程序吧!


一.有关操纵数据库的优化办法

  我们利用ASP最次要的用处就是对数据库举行操纵了,怎样更疾速的完成这些举措呢?

1.不要恣意利用“SELECT  *  ......”

  请只管拾取你所必要的那些字段,好比,一个Table中有10个字段,可是你只会用到个中的一个字段(name),就要利用“selectnamefromyourtable”,而不是用“select*fromyourtable”。你也许会说,我是这么做的阿,可是,假如一个table中有50个字段,你必要用到个中的23个字段的时分,你会怎样做呢?为了节俭打字和查找对应字段称号的贫苦,你就纷歧定会老厚道实的用“selectname,sex,age...fromyourtable”了吧!

  实践证实,只管拾取你所必要的那些字段来利用select语句将会是你的ASP程序最少加速5%摆布。

2.尽量利用体系存储历程(针对MSSQLServer)

  有的时分完成一个读取操纵,利用SQL语句和存储历程一样能够完成,可是利用存储历程将会年夜年夜加速完成读取操纵的速率,也就进步了你的ASP程序运转的速率。

3.注重你的游标利用办法

  假如你仅仅是对一个table举行读取操纵,那末请你利用forward-only,read-only游标,由于这类游标读取数据库是最为疾速的,特别是你的读取数据量很年夜的情形下。

4.不要翻开无用的自力纪录集

  大概你在笑了,我会翻开没有效的纪录集吗?是的,你固然会,好比在天生一个树型纪录集的时分,你不能不翻开父纪录集和对应的子纪录集,乃至另有孙纪录集,实在你可使用ADO供应的DataShaping手艺来替换翻开多个自力的纪录集,那样会加速程序的运转速率。(关于DataShaping的用法能够参考ADO匡助)

5.必定要记住封闭翻开的纪录集工具和毗连(Connection)工具

  有些伴侣老是奇异为什么本人的ASP程序刚入手下手的时分运转速率很快,但是多运转几遍就愈来愈慢了呢?乃至呈现服务器逝世机的情形。产生这类情形,就极可能是你翻开了太多的纪录集工具和毗连(Connection)工具而最初却没有封闭他们引发的。利用以下办法举行封闭:

YourRecordSet.close

SetYourRecordSet=Nothing

SetYourConnection=Nothing

6.获得数据库数据的办法对照

  你是怎样失掉纪录集的数据的呢?是否是用YourRecordSet(字段编号),仍是YourRecordSet("字段称号")?实在另有其他的利用办法,如今我们就对照一下吧(100笔记录):



Rs("字段称号")

Rs("字段名").Value

Rs("字段编号")

Set办法

数据库回应工夫

2.967秒

2.936秒

1.650秒

0.586秒



2.824秒

2.914秒

1.611秒

0.602秒



2.893秒

2.943秒

1.613秒

0.594秒

均匀回应工夫

2.895秒

2.931秒

1.625秒

0.594秒



  这下晓得了吧,前三种办法人人都能够看的分明,我就说说第四种办法(Set办法)怎样利用:

DimstrSQL

StrSQL="selectname,sex,agefromyourtable"

Dimrs

Setrs=server.createobject("ADODB.RECORDSET")

Rs.openstrSQL,conn,1,1

ConstfieldsOrder=2

DimobjOrder

SetobjOrder=rs(fieldsOrder)

Response.writeobjOrder  Set办法



二.有关ASP内置工具利用方面的优化办法

1.只管削减Session工具和Application工具的利用

  固然ASP中供应的这两个工具对我们的编程供应了很年夜的匡助,可是,对这两个工具要公道的利用,不要滥用。由于大批的利用这两个工具将会极年夜的增年夜服务器的包袱,严峻损耗体系资本。也将使你的ASP程序运转慢如老牛。

2.要实时的封闭不再利用的工具(特别是Session和Application)

  不实时的封闭你所利用的工具会招致体系运转速率变得迟缓。大概你会问,Session和Application不是能够主动消散的吗?完整准确,体系默许30分钟内用户假如没有任何操纵就主动触发Session_OnEnd和Application_OnEnd事务,可是大批的用户频仍的读取服务器,服务器将在很长的一段工夫坚持那些已没有效的Session,Application工具,假如不实时封闭利用完的Session和Application成果将不胜设想了。
asp,你就只能等着微软给你解决,它不乐意你就只好悲催。而且asp跑在windows服务器上,windows服务器跟linux比起来简直弱爆了!

灵魂腐蚀 发表于 2015-1-18 21:09:04

Request:从字面上讲就是“请求”,因此这个是处理客户端提交的东东的,例如Resuest.Form,Request.QueryString,或者干脆Request("变量名")

爱飞 发表于 2015-1-25 19:05:13

不能只是将它停留在纸上谈兵的程度上。

飘灵儿 发表于 2015-2-3 14:09:42

我们必须明确一个大方向,不要只是停留在因为学而去学,我们应有方向应有目标.

变相怪杰 发表于 2015-2-9 04:03:07

先学习用frontpage熟悉html编辑然后学习asp和vbscript建议买书进行系统学习

乐观 发表于 2015-2-26 21:23:43

运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。

再见西城 发表于 2015-3-8 17:59:43

我想问如何掌握学习节奏(先学什么再学什么)最好详细点?

深爱那片海 发表于 2015-3-16 10:00:16

以HTML语言整合(HTML负责界面上,ASP则负责功能上)形成一个B/S(浏览器/服务器)模式的网页程序。

飘飘悠悠 发表于 2015-3-22 22:22:32

Server:这个表示的服务器,操作服务器的一些东西使用这个,如Server.Mappath转换服务器路径,Server.CreateObject实例化一个组件
页: [1]
查看完整版本: ASP教程之完整优化ASP程序功能