仓酷云

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

[学习教程] ASP网站制作之披著羊皮的年夜野狼 - Session[转]

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

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

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

x
在实现ERP等高端的ASP应用时,用户需要提供核心的经营资料,需要ASP商有很高的信用度。楼上说交互性不好,太牵强了吧。在微软提供的一套框架中,利用asp做网站,开发效率高,使用人数少,减少不必要的开销。交互性是互动方式,是有开发人员决定的。session  ^略微年夜型一cASP的人都晓得,Session@物件真是好用,它能够用碛利用者公有的Y料担劝踩址奖恪5悄阏娴闹Session的作道理幔炕蛟S懂得以後,你就不再太敢利用@使人又塾趾薜奈锛km然D而替换之的办法稍嫌麻陂L期考量之下,也就不能不@N做了。

  起首碇vvSession的好梢杂碛用舳怂接械馁Y料担K且在rg炔А_@真的是很主要的功效,特别是有T的系y需要用到的。像是T的登进、rg、B和SS多多的即rY料z如锵到y利用者的锘@鹊纳唐珐{,@些Y凫陡魇褂谜咚饺怂枰ǔi_l者都是利用Session怼

  但是,在ASP中的Session是利用Cookies所成,伺服器⑺械Session扔的Y料,以Cookies的体例髦劣舻g[器。一般一样平常g[器⑦@些Cookies存起恚慨利用者cxBY,再次c伺服器做Br,g[器就堰@些Cookies骰Server供做怼_@便是Session的作道理,Y料量年夜一cr,由於必鞒鋈ビ质栈恚坏跃路l,效能相档停Server必花M更多的Y源在做B砗椭匦屡渲糜w等初始幼鳌,F在你大概搿何冶仨用@功效,只好奚c了』,不^本文vSession一方面是教Т蠹疑儆茫涣硪环矫娈然是有替换k法,o接著上龅模褪峭Global.asa鹊Application物件。

  Application也是rY料的妙手,各方面的才能和用法都和Session一樱徊贿^相^之下,它所的Y料是凫豆玫模簿褪侨魏问褂谜叨伎梢怨灿玫淖悼臻g。Application不像Session,不是①Y料鹘o利用者,等下一次B再x取回恚侵苯佑在Server上的w,相χ滦苌峡焐SessionS多。

  由於Application物件是公用的,起首必做的,就是要把一K公用的^域o各利用者,每用碛凶约旱^域能够Y料,以_到模MSession的目标。F在有煞N做法:1、在Serverr事前初始化创建及分派利用者w空g,一般@N做法m然一Server_C就先琢嗽S多Y源,但也省往了以後每利用者B就必做一次分派的麻5限定,利用@N办法必限定最年夜人担伸妒且泳统跏蓟只能A估创建某盗康挠w空g,以是@N办法一般用於谈天室@N小型的程式上。2、@N办法洞笮贸淌碚f算^恰的,裼B的分派法,利用者第一次B到Server上才_始分派Y源o此用簟_@煞N模MSession的计划,目标都是ppSessionY源的损耗,但竟是o法完整替换,我是必要利用到一ccSession,最少Server已能pp很多恕

■第一计划

  起首我_始第一计划的作,由於是r初始化Application,我然要Global.asa中著手:

<SCRIPTLANGUAGE="VBScript"RunAt="Server">Global.asaServerr绦SubApplication_OnStart()DimiO定最年夜下限人50人Application("ClientMax")=50檫@50人事前创建悼臻gFori=1ToApplication("ClientMax")此P悼臻g是不是遭已利用Application("User_Status_"&i)=0创建晒P悼臻g:、登进rgApplication("User_Account_"&i)=EmptyApplication("User_Logtime_"&i)=EmptyNextEndSub</SCRIPT>


  已完成初始化了,但怎样利用呢?我只需在利用者登进的中央,把底本利用SessionΥ娴馁Y料,如、登进rg,改成我创建好的Application物件中就能够了:

ふ椅幢皇褂玫目臻gFori=1ToApplication("ClientMax")IfApplication("User_Status_"&i)=0Then利用者rSession("Index")=ii定ApplicationApplication.LockO成已利用的BApplication("User_Status_"&i)=1放进蒂Y料Application("User_Account_"&i)=AccountApplication("User_Logtime_"&i)=Now()排除i定Application.UnlockExitForEndIfNext


  要获得利用者的相P蒂Y料t就像上面的做法:

Response.Write(Application("User_Account_"&Session("Index"))

  你大概lF,不是f不要利用Session幔磕槭颤N下面的原始a中有Session的存在?后面也f^,@替换计划K不克不及完整取代失落Session,g[器K不是一向和Server哆BB的,x取完面就嗑,那我要怎N晓得下次B的是统一人呢?@r候就需要靠Session,我o利用者一M即r的,此就是利用者於Application上悼臻g的a,你能够想像成y行中有良多的保U箱,你碛幸恢ц匙,而匙上有,匙上的能够行TI你往你本人的保U箱。此办法另有改M之π⌒偷贸淌揭呀是很蛴昧恕

■第二计划

  P於上一计划,你大概也想到,我自的利用了Session碛,v到,Session物件有供应一『SessionID』办法。]e,不论我要不要利用,Server都每用艟刑a,且此a不匮},至於@a就是用Session.SessionID获得。@刑a是Session必定龅幼鳎便可使用它取代我本人的程式,亦又省了一道工夫,乃至有更年夜的U充性。但基础上,下面的第一计划是有它的用处在,像是拗迫档牧奶焓业鹊刃贸淌剑酉淼牡诙娲桨福褪轻^年夜型的系y了。

  每秒上站人颠_蛋登踔辽先f人的W站,利用之前的计划,一定是行欠亨的。假O你⑸舷奕翟O10000,Server一泳你切出一f^域浣o一f利用者,倘使一^域中有5担32位元M(Byte),10000就琢320000K(320MB)以上,Server一泳腿四屈N多的渣滓到w,效能荼剡]上鼍徒档筒簧伲欢e看@些底趾苌伲樽约旱512MB蛴茫厦娴底质羌僭O一最低底郑由Server在设置wr~外利用到几Y源不得而知,以是只嗖汀R虼私Qk法只要B设置利用者悼臻g,有利用者cServerBr才切一K^域出恚绱吮悴豁要事前就设置好年夜w。

  第二计划做起硎潜容^危把第一计划的|西全体G失落,我不必要拥Global.asa,只必要改利用者登进的中央和其他有效到的中央:

i定ApplicationApplication.Lock放进蒂Y料Application("User_Account_"&Session.SessionID)=AccountApplication("User_Logtime_"&Session.SessionID)=Now()排除i定Application.Unlock


  要获得利用者的相P蒂Y料t就像上面的做法:

Response.Write(Application("User_Account_"&Session.SessionID))


  以往看良多著Session吃Y源吃的很矗量不要用,但是必用的r候是得用,e又都]教^妥的解Qk法。F在你懂了怎样替换Session,好好往使用吧!或S总是困_的效能}能因而改良很多!</p>ASP在国内异常流行,因为国内大多使用的是盗版的Windows和盗版的SQLServer,而ASP+COM+SQLServer实际上也是一种不错的搭配,其性能也不输于PHP+MYSQL,特别是Windows系统和SQLServer都有图形界面,比APACHE和MYSQL易于维护,因此对于不重视知识产权的国家来说也是一种不错的选择。
精灵巫婆 该用户已被删除
沙发
发表于 2015-1-20 09:53:05 | 只看该作者
下载一个源代码,然后再下载一个VBScript帮助,在源代码中遇到不认识的函数或是其他什么程序,都可以查帮助进行解决,这样学习效率很高。
金色的骷髅 该用户已被删除
板凳
发表于 2015-1-29 06:41:14 | 只看该作者
哪些内置对象是可以跳过的,或者哪些属性和方法是用不到的?
灵魂腐蚀 该用户已被删除
地板
发表于 2015-1-31 05:55:23 | 只看该作者
封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变,业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高。
飘飘悠悠 该用户已被删除
5#
发表于 2015-2-1 17:22:00 | 只看该作者
我们必须明确一个大方向,不要只是停留在因为学而去学,我们应有方向应有目标.
因胸联盟 该用户已被删除
6#
发表于 2015-2-7 11:48:46 | 只看该作者
下载一个源代码,然后再下载一个VBScript帮助,在源代码中遇到不认识的函数或是其他什么程序,都可以查帮助进行解决,这样学习效率很高。
小女巫 该用户已被删除
7#
发表于 2015-2-21 20:21:13 | 只看该作者
接下来就不能纸上谈兵了,最好的方法其实是实践。实践,只能算是让你掌握语言特性用的。而提倡做实际的Project也不是太好,因为你还没有熟练的能力去综合各种技术,这样只能使你自己越来越迷糊。
再现理想 该用户已被删除
8#
发表于 2015-3-13 09:28:25 | 只看该作者
代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。
透明 该用户已被删除
9#
发表于 2015-3-20 18:57:10 | 只看该作者
掌握asp的特性而且一定要知道为什么。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-1-8 05:14

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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