ASP.NET 學習4_IIS pipeline_PrePage執行架構_Webform生命週期

IIS pipeline 在版號7以上的IIS有提供兩種處理ASP.NET Request的模式(不影響webform的Page Life Cycle) (1)Integrated mode(default): 全新 提高速度和穩定性的模式,可允許.NET開發者 在 ASP.NET visual studio中編寫一些功能(ASP.NET Module) 改變IIS的行為 ,不再通過ISAPI的方式。至於擴充套件,則可以使得我們對於IIS,以及其他型別的請求有更多的控制。 -->Visual Studio中專案種類:ASP.NET Module , 或是選擇Class Library實作IHttpModule interface也可以 (2)Classic: 指的是 相容IIS 6或之前版本的一種模式,一個典型問題就是,在處理 ASP.NET這種動態網站的時候,它是通過一個所謂的ISAPI程式,作為外掛的方式來工作的。針對不同的動態應用程式(例如ASP,PHP等),會需要 不同的ISAPI( Internet Server Application Programming Interface )。 (備註:ISAPI是用來擴充IIS伺服器功能所用的技術,是用 C/C++來編輯的,產生的檔案為dll檔,可供IIS伺服器調用。) Pre-Page Execution Architecture (Integrated Mode) 這一段過程,講白話就是告訴你我在IIS 轉換成應用程式背後的運作原理 首先http.sys是一個protocol listener 負責監聽HTTP請求,也負責 response給Client端的browser。 而當接收完請求會再傳給IIS進行下一步處理(比方要分配給哪個application、process)。 此時下一步該怎麼做就會有一些相關組態設定透過 (1)WAS(Windows Process Activation Service): Windows 處理程序啟用服務 (.exe檔案) WAS會先去讀applicationHost.config去判斷對應的app pool是否有開啟。 若沒有會自行產生新的實體w3wp worker process...