中文字幕理论片,69视频免费在线观看,亚洲成人app,国产1级毛片,刘涛最大尺度戏视频,欧美亚洲美女视频,2021韩国美女仙女屋vip视频

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
ASP.NET的運行原理與運行機制

當(dāng)一個HTTP請求到服務(wù)器并被IIS接收到之后,IIS首先通過客戶端請求的頁面類型為其加載相應(yīng)的.dll文件,然后在處理過程中將這條請求發(fā)送給能夠處理這個請求的模塊。在ASP.NET3.5中,這個模塊叫做HttpHandler(HTTP處理程序組件),之所以.aspx文件可以被服務(wù)器處理,就是因為在服務(wù)器端有默認的HttpHandler專門處理.aspx文件。IIS在將這條請求發(fā)送給能夠處理這個請求的模塊之前,還需要經(jīng)過一些HttpModule的處理,這些都是系統(tǒng)默認的Modules(用于獲取當(dāng)前應(yīng)用程序的模塊集合),在這個HTTP請求傳到HttpHandler之前要經(jīng)過不同的HttpModule的處理。這樣做的好處,一是為了一些必需的過程,二是為了安全性,三是為了提高效率,四是為了用戶能夠在更多的環(huán)節(jié)上進行控制,增強用戶的控制能力。ASP.NET 3.5運行原理如圖1.1所示。

 
圖1.1  ASP.NET 3.5運行原理

說明:HttpModule模塊是一個組件,可以注冊為ASP.NET 3.5請求生命周期的一部分,當(dāng)處理該組件時,該組件可以讀取或更改請求或響應(yīng)。HttpModule模塊通常用于執(zhí)行需要監(jiān)視每個請求的特殊任務(wù),如安全或站點統(tǒng)計信息。

 (PS:

   HttpModule 概述:

       暫時先不考慮我們自己實現(xiàn)HttpModule的情況。在.Net中,Http Module 是實現(xiàn)了IHttpModule接口的程序集。IHttpModule接口本身并沒有什么好大寫特寫的,由它的名字可以出,它不過是一個普普通通的接口而已。實際上,我們關(guān)心的是實現(xiàn)了這些接口的類,如果我們也編寫代碼實現(xiàn)了這個接口,那么有什么用途。一般來說,我們可以將Asp.Net中的事件分成三個級別,最頂層是應(yīng)用程序級事件、其次是頁面級事件、最下面是控件級事件,事件的觸發(fā)分別與 應(yīng)用程序周期、頁面周期、控件周期緊密相關(guān)。而 Http Module 的作用是與應(yīng)用程序事件 密切相關(guān)的。

         我們通過HttpModule在Http請求管道(Pipeline)中注冊期望對應(yīng)用程序事件做出反應(yīng)的方法,在相應(yīng)的事件觸發(fā)的時候(比如說BeginRequest事件,它在應(yīng)用程序收到一個Http請求并即將對其進行處理時觸發(fā)),便會調(diào)用HttpModule注冊了的方法,實際的工作在這些方法中執(zhí)行。.Net 本身已經(jīng)有很多的Http Module,其中包括表單驗證Module(FormsAuthenticationModule), Session狀態(tài)Module(SessionStateModule),輸出緩存Module (OutputCacheModule)等。

     更多了解:http://www.cnblogs.com/jimmyzhang/archive/2007/11/25/971878.html

  )

ASP.NET 3.5運行機制如圖1.2所示。

通常情況下,ASP.NET框架搭建在WindowsServer(服務(wù)器版操作系統(tǒng))+IIS(Web服務(wù)器,是Internet信息服務(wù)管理器的英文縮寫)環(huán)境中,在安裝.NETFramework時,安裝程序?qū)贗IS中注冊ASP.NET所需的ISAPI擴展(aspnet_isapi.dll),這就使得作為ASP.NET宿主的IIS在接收到客戶端的HTTP請求后,將響應(yīng)請求的控制權(quán)交給ASP.NET運行。

ASP.NET運行時接收到請求后,會判斷站點是否為第一次被訪問,如果是第一次訪問,則運行初始化工作(如加載Bin目錄中的DLL動態(tài)鏈接庫,讀取Web.Config網(wǎng)站配置文件,初始化HttpApplication實例,編譯和加載Global.asax文件等)。ASP.NET運行時還負責(zé)創(chuàng)建請求響應(yīng)線程的HttpContext上下文實例和創(chuàng)建承載響應(yīng)結(jié)果的HttpTextWriter實例。然后,ASP.NET運行時尋找合適的HttpHandler(通常就是具有的ASP.NET頁面)處理HTTP請求,并等HttpHandler返回請求處理結(jié)果。最后,ASP.NET運行時在完成一些后續(xù)工作之后,如保存Session、異常處理,再通過IIS把響應(yīng)結(jié)構(gòu)返回給客戶端。

 
圖1.2  ASP.NET 3.5運行機制
注意:ASP.NET ISAPI工作的主要任務(wù)就是安排ASPNET_WP.exe處理請求,并監(jiān)視ASPNET_WP.exe進程的執(zhí)行情況,如果ASPNET_WP.exe進程不能完成任務(wù),ASP.NETISAPI就安排一個新的ASPNET_WP.exe來處理工作。ASPNET_WP.exe的主要任務(wù)是將請求交給一系列稱為HTTP管道的托管對象。如果把ASP.NETISAPI比做銷售商,那么ASPNET_WP.exe就是生產(chǎn)商,而HTTP管道就是生產(chǎn)的流水線,負責(zé)流水線的小組就是HttpRuntime。生產(chǎn)商ASPNET_WP.exe會將訂單(HTTP請求)交給HttpRuntime小組的工作人員ProcessRequest(HttpWorkerRequestwr),HttpRuntime根據(jù)內(nèi)部的分工,最終由ProcessRequestInternal(HttpWorkerRequestwr)在流水線上進行生產(chǎn)。
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
IIS是如何處理ASP.NET請求的
ASP.NET必須知道的:HttpModule,HttpHandler-程序開發(fā)-紅黑聯(lián)盟
Asp.net MVC項目的部署(一):IIS以及Asp.net與IIS相關(guān)的部分
ASP.NET底層的初步認識與理解
asp.net MVC 應(yīng)用程序的生命周期(上)
ASP.Net 管道模型 VS Asp.Net Core 管道 總結(jié)
更多類似文章 >>
生活服務(wù)
熱點新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服