,當有使用者與 Server 連線時才切一塊區域出來,如此便不須要事先就配置好龐大記憶體。
第二方案做起來是比較簡單,請把第一方案的東西全部丟掉,我們不需要動到 Global.asa,只需要改使用者登入的地方和其他有用到的地方:
'鎖定 ApplicationApplication.Lock '放入變數資料Application("User_Account_" & Session.SessionID) = AccountApplication("User_Logtime_" & Session.SessionID) = Now() '解除鎖定Application.Unlock
要取得使用者的相關變數資料則就像下面的做法:
Response.Write(Application("User_Account_" & Session.SessionID))
以往看很多書,都寫著 Session 吃資源吃的很兇,儘量不要用,可是必須用的時候還是得用,書裡又都沒教較妥當的解決辦法。現在當你懂了如何替代 Session,好好去利用吧!或許老是困擾的效能問題能因此改善不少!
| 对此文章发表了评论 |
