ASP.NET:
HTTP請求流程:
頁面請求(HttpRequest)——www服務(inteinfo.exe)截獲請求——(轉交給aspNet_isapi.dll)——aspNet_isapi.dll
——(通過HTT pipe管道)——AspNetWeb.exe進程——HttpRunTime.exe(CRL運行時)——httpApplicationFactory創建實例——
HttpMoudle——處理請求
HttpHanlderFactory——httpHandler.ProcessRequest處理請求
管道:
當Http請求進入 Asp.Net Runtime以後,它的管道由託管模塊(NOTE:Managed Modules)和處理程序(NOTE:Handlers)組成,並且由管道來處理這個 Http請求。
數據流動方向:
1.請求到達httpRunTime後,創建一個httpApplication實例,該實例中的httpContext包含了此請求中的對象:HttpRequest、HttpResponse、HttpSessionState等。
2.Http請求通過moule的處理,modlue具有對http的完全控制權。
3.http請求來到HttpHandler處理,這裡處理業務邏輯,我們所知的aspx頁面也繼承於IHttpHandler接口。
4.請求回到moudle中 這裡可以解釋程序中的inserting inserted等諸多事件。
參考:http://www.tracefact.net/Asp-Net-Architecture/Http-Request-Processing-Flow.aspx