日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

asp.net請求響應模型原理隨記回顧

系統 3258 0

asp.net請求響應模型原理隨記回顧_第1張圖片

?

asp.net請求響應模型原理隨記回顧:

根據一崇敬的講師總結:(會存在些錯誤,大家可以做參考)

1.-當在瀏覽器輸入url后,客戶端會將請求根據http協議封裝成為http請求報文。并通過主socket創建新的socket對象傳輸請求報文。(請求服務器端的端口為80端口)

2.當socket到達80端口后,這時監聽80端口的socket會創建新的socket代理來,開辟新的socket端口,進行通信,請求報文信息會被操作系統的內核模式kernalModel的http.sys(驅動級別)進行解析并負責將請求分發具體的處理程序。(http.sys其實可以看做是插件模型,即管道模型,通過系統注冊表向這個管道注冊處理程序,這樣請求信息就會被注冊處理程序截獲過濾執行)。

3.http.sys解析出請求時80端口并根據注冊表找到對應處理程序,之后交給了寄宿在svchost.exe中的w3svc服務,它會判斷請求文件的后綴,如果是靜態頁,js等靜態資源,便直接在iis內部處理再通過通信端口返回響應信息。如果是.aspx,就會找到相應的處理程序(可以看出iis也是插件模型)即aspnet_isapi.dll(非托管用c++寫的)。

4. aspnet_isapi.dll會通過ecb操作系統句柄(標志系統一些資源)這樣托管環境就能訪問報文信息(可以看出aspnet_isapi.dll是托管和非托管環境的一個橋梁);之后傳給isapiruntime,通過ecb指針創建一個httpworkrequest對象(對http報文做最初的封裝處理)之后再交給httpruntime對象,它會對httpworkrequest對象做進一步封裝,通過創建httpcontext,將httpworkrequest封裝到httpcontext的httprequest對象中(返回的相應報文會封裝到httpcontext的httpresponse中)。

5.之后HttpApplicationFactory創建一個HttpApplication管道(這里使用了對象池,因為HttpApplication通過反射創建好資源,如果對象池中有的話,直接取出來,和線程池,應用程序池,一般處理程序池都是一樣的,httpapplication管道當然也是插件模型了,通過httpModule注冊事件),這時httpcontext會流經這個管道,注冊的處理程序便可以截獲過濾httpcontext了。(httpallication共有23個事件,19個事件可以讓開發者使用,-httpapplication的第7個事件獲得緩存,8事件:創建最終處理當前請求的handler實例;在11和12個事件之間會調用執行一般處理程序(handler的pr方法處理請求);)

asp.net請求響應模型原理隨記回顧_第2張圖片

?

?

asp.net請求響應模型原理隨記回顧


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 尚义县| 隆化县| 嘉峪关市| 泰和县| 香格里拉县| 德钦县| 广水市| 驻马店市| 阿图什市| 龙陵县| 汝南县| 温泉县| 平乐县| 梁平县| 彰武县| 林芝县| 平果县| 南投市| 陕西省| 家居| 枝江市| 三河市| 樟树市| 江津市| 芒康县| 丹东市| 扶余县| 绥芬河市| 且末县| 花垣县| 陇川县| 新乡市| 武冈市| 正阳县| 宁晋县| 弥勒县| 上饶市| 新巴尔虎右旗| 克东县| 石嘴山市| 米脂县|