標籤:
一:IIS5.0運行在進程InetInfo.exe中,該進程寄宿著一個名為World Wide Publishing Service(W3VC)的window服務。
W3VC的主要功能:包括HTTP請求的監聽、背景工作處理序和組態管理
檢測到HTTP 要求時:
根據副檔名判斷是否靜態資源
1、是直接將常值內容以HTTP回複的形式返回
2.動態資源,通過IIS 的指令碼映射----找到對應的ISAPI動態連結程式庫(是IIS和其他的動態Web應用和平台之間的紐帶)
ASP.NET中對應的ISAPI檔案的名稱為:aspnet_isapi.dll
ISAPI支援ISAPI 的擴充(ISAPI Extension和ISAPI篩選)
ISAPI是真正處理HTTP請求的介面 ISAPI在HTTP請求真正處理之前查看、修改、轉寄和拒絕請求(進行請求的驗證)
二:IIS6.0新增的功能:
1.ISAPI動態連結程式庫直接載入到背景工作處理序中
2.引入了應用程式集區,由於每一個應用程式集區對應一個獨立的背景工作處理序,從而運行在不同的應用程式集區中的Web應用提供基於進程的隔離等級
背景工作處理序的別名(W3WP.exe)
3.建立了一個名為HTTP.SYS的HTTP監聽器。屬於TCP 之上的一個網路驅動程式 不在IIS的中繼資料庫中,定義在註冊表中。
三:HTTP。SYS帶來的好處如下:
1.持續監聽:HTTP.SYSw是一個網路驅動程式,始終處於運行狀態,對於使用者的HTTP請求能夠及時作出反應
2.更好的穩定性:運行在作業系統的核心模式下,並不執行任何使用者代碼,其本身不會受到Web應用、背景工作處理序和IIS進程的影響。
3.核心模式下資料緩衝:如果某個資源被頻繁請求,HTTP.SYS會把響應的內容進行緩衝,響應的內容可以直接響應後續的請求(基於核心模式的緩衝,不存在核心模式和使用者模式的切換,響應速度得到了相應的提高)
四:IIS6.0和ASP.NET
1.當HTTP.SYS監聽到HTTP請求分發給W3SVC----解析出URL地址
2 根據從Metabase擷取的URL與Web應用之間的映射關係得到-----目標應用----目標應用啟動並執行應用程式集區或背景工作處理序
3. 如果進程不存在則建立新的工作程式進程(相應的ISAPI動態連結程式庫被載入 ISAPI.dll為aspnet_isapi.dll)
4.ASP.NET ISAPI在負責進行CLR載入、應用程式定義域的建立和Web應用的初始化操作
MVC學習(一)