仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 435|回复: 8
打印 上一主题 下一主题

[学习教程] ASP网站制作之周全优化ASP使用程序的功能(转载)

[复制链接]
愤怒的大鸟 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 23:36:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
源代码保护方面其实现在考虑得没那么多了..NET也可以反编译.ASP写得复杂的话别人能看得懂的话.他也有能力自己写了.这方面担心的倒不太多.纵观现在网上可以下载的那些所谓BBS还有什么网站等等的源代码程序|功能|优化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成果将不胜设想了。

封闭的办法是:

  Set工具=Nothing

三.公道利用Include文件

  我们这里说的是指用<!--#includefile="xxx"-->情势包括出去的文件,而且文件内容满是ASP程序,也就是说你将一些大众的函数放到一个文件中,并在其他有大概挪用个中函数的页面包括出去。

倡议你不要将一切的函数放到一个包括文件中,由于你在其他页面包括这个文件的时分,服务器端是要举行预编译的,极可能在一个包括文件内里有上百个函数,而你只是想要利用个中的一个函数,如许就得失相当了。以是,尽量的支解你的包括文件成为多个小的包括文件。如许也能够进步程序的运转速率哦。

四.有关VBScript言语方面的优化办法

1.只管利用体系函数取代本人编写的函数

  好比要想支解一个有纪律的字符串("sss,ddd,fff,ggg"),就不用本人利用甚么Mid(),Instr等等函数来剖析了,实在VBScript就供应了一个函数Split(),如许既省工夫,又进步了速率,何乐而不为呢?

2.削减静态数组的利用

3.尽量的养成提早声明变量的习气

  不要小视了这一条,提早声明变量会加速程序的注释实行工夫。相反,从不声明变量,不仅程序难以浏览,全部程序在服务器的实行效力也会年夜打扣头的。

五.其他方面的优化办法

1.在ASP文件中只管利用<%%>嵌进到HTML标签中,而不要利用Response.write的体例,好比:

<html>

<body>

<%Ifok=1then%>

  Hello!World!

<%EndIf%>

</body>

</html>

就远远比:

<%

Response.write"<html>"

Response.write"<body>"

            Ifok=1then

  Response.write"Hello!World!"

            EndIf

Response.write"</body>"

Response.write"</html>"

%>

的运转速率要快,特别是你的ASP文件对照年夜的情形下。由于,第二种体例增添了服务器真个注释工夫,因此也就下降了ASP程序的功能。

2.只管用一个ASP文件完成一个举措

  良多人喜好在一个ASP程序中同时完成诸如增加,删除,查找等等多个举措,不要以为如许是无效的使用了文件,相反,如许做的了局是使得使用程序的运转速率减慢良多。

应该将增加,删除,查找平分</p>写软件都是想的时间比写的时间要长的.如果反过来了就得看看是什么原因了.另外大家可以回去问问公司里的小MM.(一般企业里,跟你们交付软件接触得最多的是她们)
第二个灵魂 该用户已被删除
沙发
发表于 2015-1-20 10:27:21 | 只看该作者
我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。
不帅 该用户已被删除
板凳
发表于 2015-1-25 21:21:00 | 只看该作者
Session:这个存储跟客户端会话过程的数据,默认20分钟失效
山那边是海 该用户已被删除
地板
发表于 2015-2-4 02:05:23 | 只看该作者
ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码,能产生和执行动态、交互式、高效率的站占服务器的应用程序。
飘灵儿 该用户已被删除
5#
发表于 2015-2-9 10:32:53 | 只看该作者
如何更好的使自己的东西看上去很不错等等。其实这些都不是问题的实质,我们可以在实践中不断提升自己,不断充实自己。
简单生活 该用户已被删除
6#
发表于 2015-2-27 05:38:20 | 只看该作者
我想问如何掌握学习节奏(先学什么再学什么)最好详细点?
只想知道 该用户已被删除
7#
发表于 2015-3-8 22:30:35 | 只看该作者
Session:这个存储跟客户端会话过程的数据,默认20分钟失效
谁可相欹 该用户已被删除
8#
发表于 2015-3-16 15:16:35 | 只看该作者
最近在学asp,不要问我为什么不直接学.net,因为公司网站是asp做的所以有这个需要,卖了本书asp入门到精通,对里面的六大内置对象老是记不住,还有很多属性和方法看的头晕。
飘飘悠悠 该用户已被删除
9#
发表于 2015-3-22 23:17:38 | 只看该作者
如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-6-16 13:48

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表