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

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

系統 3038 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條評論
主站蜘蛛池模板: 徐汇区| 曲阜市| 余庆县| 呼图壁县| 沽源县| 凤城市| 灯塔市| 湄潭县| 鄄城县| 奉贤区| 西乌珠穆沁旗| 霍林郭勒市| 闽清县| 镇沅| 聂荣县| 榆社县| 万源市| 沙河市| 启东市| 吴川市| 泸西县| 桦南县| 普宁市| 喜德县| 安泽县| 土默特左旗| 仙游县| 龙海市| 会昌县| 镇远县| 盐边县| 禹州市| 高青县| 屯留县| 阳高县| 兴隆县| 京山县| 临安市| 乡城县| 绥棱县| 龙口市|