二. ASP+的四大新特性
1. ASP+基於全新的架構
ASP+是完全基於NGWS運行時框架的。
NGWS運行時框架(NGWS runtime framework)是Microsoft提出的面向下一代web的.Net架構的核心組成部分。NGWS運行時是一種全新的針對Windows的底層基礎架構,它位於Windows的運行和用戶程序之間,被用來管理代碼的執行。它在開發者和操作系統之間提供一種封裝,使Windows編程變得更加簡單。NGWS運行時是完全基於對象的,它擴展了COM(Component Object Model,組件對象模型)的結構,為可擴展分布式應用程序提供了更多的新的增強性服務。有了NGWS運行時,我們再不必為忘記將ASP+頁面中某個對象清零而擔心,因為它會自動處理內存垃圾回收。同時一些對操作系統至關重要的底層服務的訪問也變得更為輕松,安全性,認證,文件系統訪問,網絡信息,等等等等。。。一切都不成問題!
2.ASP+通過編譯來執行
ASP+針對ASP的執行表現作了許多改進,頁面腳本不再通過解釋來執行,而是通過NGWS(Next Generation Web Services,下一代web服務)兼容的編譯器編譯來執行。別誤會!我們所指的編譯不是要你生成.EXE文件。
你仍然和以前一樣編寫代碼,編譯工作在腳本代碼第一次收到請求並運行時由NGWS運行時自動完成,同時保存一份緩存的拷貝。當腳本再次收到請求時,系統直接運行緩存的拷貝,從而大大加快了執行速度,因為我們現在運行的是經過編譯的代碼。
如果源腳本有了改動,運行時會自動從緩存中丟棄舊的編譯版本,以便下次收到執行請求時重新編譯代碼。
3.數據緩存技術
好了,現在我們有了一個更快的編譯過的ASP+,但是這還是不夠。設想一下這樣的情形:你有一個動態生成的ASP+頁面,該頁面的內容源於一個後台數據庫,而這個數據庫可能好幾天才得以更新一次。。。現在,假設你的服務器收到了來自客戶端的一個請求,服務器會與數據庫建立連接,執行查詢,取回記錄,反饋給用戶,很簡單,對嗎?可是當服務器在同一時間要處理成千上萬的相同的請求,會產生什麼樣的後果呢?毫無疑問,結果是無謂的重復運算與可怕的系統資源占用。
這就是為什麼要用到數據緩存技術。