仓酷云

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

[学习教程] ASP网页编程之怎样加强ASP程序功能(2)

[复制链接]
萌萌妈妈 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:54:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
无法实现跨操作系统的应用。当然这也是微软的理由之一,只有这样才能发挥ASP最佳的能力。可是我却认为正是Windows限制了ASP,ASP的概念本就是为一个能让系统运行于一个大的多样化环境而设计的;程序|功能怎样加强ASP程序功能(2)
2000-08-11・编译:甘冀平・Yesky

技能6:伶俐地利用Session工具

  Session在忙碌站点上利用时有几个缺点。忙碌的意义是:站点上每秒有上百的页面被哀求,大概同时有上千的会见用户。这个技能关于那些请求程度扩大强的站点十分主要,也就是指这些站点:它们使用多个服务器完成数据装载大概处置大批容错。关于小型站点,好比外部网Intranet,Session长短常值得倡始的。

  再次重申,ASP主动地为每个初次点击Web服务器的用户创立一个Session,每个Session占据约莫10KB的内存,保存期默许是20分钟。

  利用Session最年夜的成绩不是功能,而是扩大性,Session不克不及超过多个Web服务器,一旦在一个服务器上创立了Session,它的数据就驻留在那边。这意味着,假如在Web上利用Session,你就得为每个间接会见寄存Session服务器的用户哀求计划一个战略。这就是将用户“粘”在Web服务器上,术语“stickysessions”就来历于此。假如Web服务器碰到停滞,“Stuck”用户就会丧失他们的Session形态,由于Session不保存在磁盘上。

  实行粘性session的战略包含硬件与软件办理体例,好比windows2000初级服务器中的NetworkLoadBalancing和Cisco公司的LocalDirector,但调换这些要就义必定的扩大性。

  Application工具也不克不及超过服务器。假如必要在Web群中共享并更新Application数据,就必要利用背景数据库。但是,只读Application数据在Web群中仍旧很有效。

  很多对义务请求严厉的站点都要设立最少2个Web服务器,以是在计划严厉义务的使用程序时,就必要实行“stickysessions”,大概复杂地制止利用Session,同时也能够接纳其他保留用户形态到自力Web服务器的办理手艺。

  假如不利用Session,必定要确认将它们封闭,这能够经由过程Internet服务办理器完成。假如决意利用Session,能够经由过程几种办法来最小化它们的影响。

  能够将不必要Session的内容(好比匡助画面,会见者地区,等等)挪动到封闭Session的自力ASP使用程序中。在基本页面上,能够给ASP一个唆使,让它不必要利用Session。将上面的代码间接到场到ASP页面的头部:

<%@EnableSessionState=False%>

  利用这个唆使的一个很好的注释是在框架布局中Session创立了一个风趣的成绩。ASP确保在一个时候只要一个来自Session的哀求被实行,这就确保了假如扫瞄器为单个用户哀求多个页面时,只要一个ASP哀求在当时可以承受Session,云云就制止了存取Session工具时的多线程成绩。很不幸,在框架布局中的一切页面将依照一连的按次显现出来,一个接一个,而不是同时,以是用户为了看到全部框架必需要等很长工夫。划定规矩是:假如必定的框架页面没有利用Session,就必定要告知ASP间接利用@EnableSessionState=False。

  除利用Session工具,另有很多其他办理会话形态的选择。关于小数目的形态(小于4KB),我们一般倡议利用cookie、查询字符串变量和表单埋没域。关于象购物车一样的年夜数目数据,背景数据库是最符合的选择。

技能7:将代码装进COM工具中

  假如要编写良多VBScript大概JScript,为了提本性能,能够将代码编写成COM工具而且编译利用。编译代码基础上比注释性代码运转快很多,编译组件工具可经由过程“earlybinding”存取其他COM工具,这比在剧本中挪用组件要无效。

这么做有很多长处:

COM工具无益于从贸易划定规矩中自力出表达式划定规矩
COM工具使代码重用变成大概
很多开辟者发明用VB,C++大概VisualJ++编写程序,比ASP更简单调试
  COM工具也出缺点,包含初始开辟工夫和对分歧编程技能的必要。注重将大批ASP代码做成COM工具组件不会有优点,反而大概招致功能的丧失,从而得到了编译代码的上风。如何组合利用ASP剧本和COM工具到达最好功能是一个测试的成绩。我们注重到微软公司已年夜范围在Windows2000/IIS5.0上进步了剧本与ADO的功能,由此,跟着IIS5.0版本的引进,削减了编译代码的功能上风。

技能8:利用OptionExplicit

  要在ASP文件中利用OptionExplicit界说,而且安排到ASP文件的头部,从而强制开辟者在利用前声明一切的变量。很多程序员都以为这在使用程序调试时十分有效,由于它制止了发生毛病范例变量和偶尔创立新变量的大概。

大概更主要的是,声明的变量要年夜年夜快于非声明变量。

技能9:拷贝常常利用的数据到剧本变量中

  在ASP中存取COM工具时,应当拷贝常常利用的工具数据到剧本变量中,如许就削减了对COM工具的办法挪用。这些挪用要比存取剧本变量绝对来讲费时吃力。当存取Collection和Dictionary工具时,利用这项技能也削减了高贵的查找操纵。

  一般,假如要不止一次地存取工具数据,就应将数据放进剧本变量中,工具数据次要也就是Request变量(表单和查询字符串变量)。好比,站点要传送一个叫做UserID的查询字符串变量,假定它将在一个特别页面被援用12次,那末不必要挪用Request(“UserID”)12次,只需在ASP页面的头部分派给UserID一个变量,然后在页面中利用它,如许做就节俭了11次COM办法的挪用。

  实践中,存取COM属性或办法是很高贵的,上面的例子展现了通用代码:

Foo.bar.blah.baz=Foo.bar.blah.qaz(1)
IfFoo.bar.blah.zaq=Foo.bar.blah.abcThen...

下面的代码实行后,产生以下事变:

1、变量Foo被看成全局工具
2、变量bar被看成Foo的一员
3、变量blah被看成Foo.bar的一员
4、变量qaz被看成Foo.bar.blah的一员
5、挪用Foo.bar.blah.quaz(1)
6、再实行步骤1到3分化baz
7、分化baz做为Foo.bar.blah的一员
8、再实行步骤1到3分化zaq
9、再实行步骤1到3一次分化abc

如上所示,这十分没无效率而且很慢。更快的办法是用VBScript编写代码,以下:

Setmyobj=Foo.bar.blahdotheresolutionofblahONCE
Myobj.baz=myobj.qaz(1)
IfMyobj.zaq=Myobj.abcThen...

假如利用VBScript5.0大概更高版本,能够用With语句编写:

WithFoo.bar.blah
.baz=.qaz(1)
If.zaq=.abcThen...
...
EndWith


注重:这个技能也能够使用在VB编程中。

技能10:制止再界说数组

  争夺不要再界说数组。思索到功能成绩,假如呆板的物理内存巨细不敷,最好按最差情形大概最好情形设置数组的初始尺寸,必要时再从头界说。

上面的代码展现了Dim和Redim的利用:

<%
DimMyArray()
RedimMyArray(2)
MyArray(0)="hello"
MyArray(1)="good-bye"
MyArray(2)="farewell"
...
someothercodewhereyouendupneedingmorespacehappens,then...
RedimPreserveMyArray(5)
MyArray(3)="morestuff"
MyArray(4)="evenmorestuff"
MyArray(5)="yetmorestuff"
%>

  复杂地界说数组初始尺寸为符合的巨细长短常好的,而不要用Redim加年夜数组。这么做大概华侈了一些内存(假如没有完整地利用空间),可是博得了速率。

</p>缺点:正版成本价格贵(盗版就不说了)、不够安全,大多数服务器用windows系统,没有linux安全
沙发
发表于 2015-1-18 16:11:21 | 只看该作者
运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。
分手快乐 该用户已被删除
板凳
发表于 2015-1-22 09:33:46 | 只看该作者
掌握asp的特性而且一定要知道为什么。
再现理想 该用户已被删除
地板
发表于 2015-1-31 05:48:41 | 只看该作者
先学习用frontpage熟悉html编辑然后学习asp和vbscript建议买书进行系统学习
小女巫 该用户已被删除
5#
发表于 2015-2-6 17:33:55 | 只看该作者
交流是必要的,不管是生活还是学习我们都要试着去交流,通过交流我们可以学到很多我们自己本身所没有的知识,可以分享别人的经验甚至经历。
因胸联盟 该用户已被删除
6#
发表于 2015-2-17 18:39:00 | 只看该作者
下载一个源代码,然后再下载一个VBScript帮助,在源代码中遇到不认识的函数或是其他什么程序,都可以查帮助进行解决,这样学习效率很高。
小魔女 该用户已被删除
7#
发表于 2015-3-5 21:49:25 | 只看该作者
下载一个源代码,然后再下载一个VBScript帮助,在源代码中遇到不认识的函数或是其他什么程序,都可以查帮助进行解决,这样学习效率很高。
愤怒的大鸟 该用户已被删除
8#
发表于 2015-3-12 15:44:45 | 只看该作者
从事这个行业,那么你可以学ASP语言,简单快速上手,熟练dreamweav排版,写asp代码,熟练photoshop处理图片,打好基础就行了
第二个灵魂 该用户已被删除
9#
发表于 2015-3-19 23:35:24 | 只看该作者
还有如何才能在最短的时间内学完?我每天可以有效学习2小时,双休日4小时。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-12-23 11:16

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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