優(yōu)勝?gòu)倪x擇開(kāi)始,我們是您最好的選擇!—— 中州期刊聯(lián)盟(新鄉(xiāng)市博翰文化傳媒有限公司)

基于HttpHandler的頁(yè)面靜態(tài)化

作者:沈陽(yáng)來(lái)源:原創(chuàng)日期:2013-06-22人氣:818

1、引言
ASP.NET是微軟推出的一種Web服務(wù)器端開(kāi)發(fā)技術(shù),我們?cè)谧鯝SP.NET開(kāi)發(fā)時(shí)通常更多的是考慮頁(yè)面上實(shí)現(xiàn)的功能,例如:數(shù)據(jù)怎么在頁(yè)面上顯示,用戶(hù)登錄該如何實(shí)現(xiàn)等。但我們很少考慮在服務(wù)器端如何通過(guò)編程的方式去處理請(qǐng)求,例如:當(dāng)客戶(hù)端請(qǐng)求一個(gè)aspx頁(yè)面時(shí),默認(rèn)情況下服務(wù)器會(huì)編譯并執(zhí)行這個(gè)動(dòng)態(tài)頁(yè)面,并將執(zhí)行結(jié)果輸出到客戶(hù)端,這就是一個(gè)典型的“請(qǐng)求-響應(yīng)”的過(guò)程。但如果該頁(yè)涉及到大數(shù)據(jù)量的數(shù)據(jù)庫(kù)查詢(xún)以及較為復(fù)雜的邏輯運(yùn)算,特別是在該頁(yè)面并發(fā)訪問(wèn)人數(shù)較多的情況下,響應(yīng)時(shí)間會(huì)大幅度增多,服務(wù)器壓力也會(huì)增加。怎么解決這個(gè)問(wèn)題?我們可以采用動(dòng)態(tài)頁(yè)面靜態(tài)化技術(shù)解決這個(gè)問(wèn)題。
2、頁(yè)面靜態(tài)化的概念
頁(yè)面靜態(tài)化即把動(dòng)態(tài)頁(yè)面轉(zhuǎn)換成靜態(tài)頁(yè)面。頁(yè)面靜態(tài)化的優(yōu)勢(shì):(1)有利于搜索引擎搜索、(2)沒(méi)有丟掉動(dòng)態(tài)頁(yè)面維護(hù)內(nèi)容的方便性、(3)性能和安全方面的提升。早期的搜索引擎并不能很好的檢索如*.jsp,*.aspx等的服務(wù)器動(dòng)態(tài)頁(yè)面,但是對(duì)*.html等靜態(tài)頁(yè)面卻有良好的檢索效果,于是就產(chǎn)生了一種“動(dòng)態(tài)頁(yè)面靜態(tài)化”的技術(shù),在ASP.NET中就是把用戶(hù)對(duì)同一個(gè)aspx頁(yè)面的不同請(qǐng)求結(jié)果保存到不同的html文件中,在以后的對(duì)該aspx頁(yè)面的請(qǐng)求,將調(diào)用相應(yīng)html頁(yè)面作為對(duì)客戶(hù)端的響應(yīng),這樣將大大節(jié)省服務(wù)器端處理時(shí)間,以達(dá)到快速響應(yīng)客戶(hù)端請(qǐng)求的效果。
要想實(shí)現(xiàn)動(dòng)態(tài)頁(yè)面的靜態(tài)化必須先了解ASP.NETISAPI的運(yùn)行機(jī)制。
2.1ASP.NET請(qǐng)求的處理過(guò)程如下
(1)當(dāng)Http請(qǐng)求提交到服務(wù)器端時(shí),IIS檢查所請(qǐng)求的資源類(lèi)型并調(diào)用ASP.NETISAPI,步驟如下:1)調(diào)用ASP.NET輔助進(jìn)程(IIS6對(duì)應(yīng)為w3wp.exe);2)輔助進(jìn)程加載.NET運(yùn)行時(shí)環(huán)境;3)ASP.NETISAPI將請(qǐng)求轉(zhuǎn)發(fā)給輔助進(jìn)程。
(2)輔助進(jìn)程收到請(qǐng)求,通知ASP.NETISAPI它將進(jìn)行處理。
(3)在輔助進(jìn)程的上下文中執(zhí)行處理過(guò)程,步驟如下:1)在.NET運(yùn)行時(shí)環(huán)境中執(zhí)行;2)經(jīng)HttpModule容器和HttpHandler容器處理。
(4)處理完畢,通知ASP.NETISAPI完成。在這個(gè)處理過(guò)程中我們重點(diǎn)關(guān)注的是如何通過(guò)HttpModule和HttpHandler來(lái)處理Http請(qǐng)求。

 

 

網(wǎng)絡(luò)客服QQ: 沈編輯

投訴建議:0373-5939925????投訴建議QQ:

招聘合作:2851259250@qq.com (如您是期刊主編、文章高手,可通過(guò)郵件合作)

地址:河南省新鄉(xiāng)市金穗大道東段266號(hào)中州期刊聯(lián)盟 ICP備案號(hào):豫ICP備2020036848

【免責(zé)聲明】:中州期刊聯(lián)盟所提供的信息資源如有侵權(quán)、違規(guī),請(qǐng)及時(shí)告知。

版權(quán)所有:中州期刊聯(lián)盟(新鄉(xiāng)市博翰文化傳媒有限公司)

關(guān)注”中州期刊聯(lián)盟”公眾號(hào)
了解論文寫(xiě)作全系列課程

核心期刊為何難發(fā)?

論文發(fā)表總嫌貴?

職院?jiǎn)挝话l(fā)核心?

掃描關(guān)注公眾號(hào)

論文發(fā)表不再有疑惑

論文寫(xiě)作全系列課程

掃碼了解更多

輕松寫(xiě)核心期刊論文

在線(xiàn)留言