亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于ASP.NET的頁(yè)面靜態(tài)化實(shí)現(xiàn)方法研究

        2017-07-12 08:07:40生力軍
        軟件導(dǎo)刊 2017年6期

        生力軍

        摘要: 針對(duì)動(dòng)態(tài)頁(yè)面技術(shù)缺點(diǎn),基于ASP.NET框架,提出了動(dòng)態(tài)頁(yè)面靜態(tài)化的3種不同實(shí)現(xiàn)方案——真靜態(tài)、偽靜態(tài)、折中法。其中,偽靜態(tài)主要使用HttpModule攔截并修改HTTP請(qǐng)求中的URL地址;折中法主要使用HttpHandler結(jié)合靜態(tài)頁(yè)面模板生成并返回靜態(tài)頁(yè)面文件。給出了頁(yè)面靜態(tài)化實(shí)現(xiàn)方案選擇策略,即利用參數(shù)對(duì)動(dòng)態(tài)網(wǎng)頁(yè)進(jìn)行分類,不同的動(dòng)態(tài)網(wǎng)頁(yè)采用不同的靜態(tài)化實(shí)現(xiàn)方案。

        關(guān)鍵詞:ASP.NET;靜態(tài)化;HttpModule;HttpHandler;選擇策略

        DOIDOI:10.11907/rjdk.171136

        中圖分類號(hào):TP301

        文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-7800(2017)006-0022-03

        0 引言

        動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)因其交互性強(qiáng)、數(shù)據(jù)刷新實(shí)時(shí)等特點(diǎn)[1],使網(wǎng)站開發(fā)效率和維護(hù)效率得到了大幅提升,目前互聯(lián)網(wǎng)上大部分網(wǎng)站都采用動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)構(gòu)建,但其存在的問題卻不容忽視。

        (1)對(duì)搜索引擎不夠友好。目前,很多搜索引擎不支持動(dòng)態(tài)鏈接,在網(wǎng)絡(luò)上獲取頁(yè)面時(shí),會(huì)優(yōu)先獲取HTML靜態(tài)頁(yè)面內(nèi)容。

        (2)降低服務(wù)器性能。如果頁(yè)面訪問量比較大,動(dòng)態(tài)頁(yè)面會(huì)頻繁與數(shù)據(jù)庫(kù)服務(wù)器進(jìn)行交互,降低服務(wù)器性能。當(dāng)前,在Web技術(shù)中,只有HTML的靜態(tài)頁(yè)面效率最高,對(duì)服務(wù)器性能要求最低[2]。

        (3)暴露網(wǎng)站使用技術(shù)。如果動(dòng)態(tài)頁(yè)面含有類似.jsp或.aspx這樣的擴(kuò)展名,那么制作網(wǎng)站技術(shù)便一目了然,使黑客容易有針對(duì)性地對(duì)網(wǎng)站進(jìn)行攻擊。

        針對(duì)上述問題,有必要對(duì)動(dòng)態(tài)頁(yè)面進(jìn)行靜態(tài)化處理。目前,大多數(shù)網(wǎng)站都采用單一的靜態(tài)化實(shí)現(xiàn)方案,但是在某些情況下,服務(wù)器性能不但沒有提高,反而出現(xiàn)了下降。

        實(shí)際上,對(duì)于不同類型的動(dòng)態(tài)頁(yè)面,其靜態(tài)化實(shí)現(xiàn)方案應(yīng)該有所區(qū)別,以最大限度提高服務(wù)器性能。本文首先分析了ASP.NET框架下不同頁(yè)面靜態(tài)化實(shí)現(xiàn)方案,然后將動(dòng)態(tài)頁(yè)面進(jìn)行分類,按照不同頁(yè)面的特點(diǎn)采用不同的靜態(tài)化實(shí)現(xiàn)方法。

        1 實(shí)現(xiàn)方案

        目前,實(shí)現(xiàn)頁(yè)面靜態(tài)化技術(shù)主要有以下幾種方案:

        (1)真靜態(tài)。這種方案真正將動(dòng)態(tài)頁(yè)面批量轉(zhuǎn)化成靜態(tài)頁(yè)面并存儲(chǔ)在服務(wù)器上。這種方案的優(yōu)點(diǎn)是空間成本較低,不需要數(shù)據(jù)庫(kù)服務(wù)器。其缺點(diǎn)也很明顯:一旦網(wǎng)站規(guī)模較大,頁(yè)面的維護(hù)全部依靠手工操作,工作量巨大,維護(hù)困難。因此,這種方式只適合一些簡(jiǎn)單的、更新頻率極低的介紹性頁(yè)面。

        (2)偽靜態(tài)。這種方案其實(shí)并沒有真正將動(dòng)態(tài)頁(yè)面轉(zhuǎn)化為靜態(tài)頁(yè)面,而是通過URL重寫技術(shù),將動(dòng)態(tài)頁(yè)面路徑重寫成.html靜態(tài)頁(yè)面路徑,主要實(shí)現(xiàn)搜索引擎友好性與網(wǎng)站安全性,而性能與單純的動(dòng)態(tài)頁(yè)面沒有差異。這種方案適用于更新速度快而訪問量較小的動(dòng)態(tài)頁(yè)面。

        (3)折中法。這種方案在用戶訪問靜態(tài)頁(yè)面時(shí),首先判斷靜態(tài)頁(yè)面在服務(wù)器上是否存在,如果存在就直接將靜態(tài)頁(yè)面返回給客戶端;如果不存在,則執(zhí)行轉(zhuǎn)化操作生成靜態(tài)頁(yè)面,將該頁(yè)面發(fā)送給客戶端并保存在服務(wù)器上,下次再請(qǐng)求該頁(yè)面時(shí)則無(wú)需執(zhí)行轉(zhuǎn)換操作。

        以上3種方案在動(dòng)態(tài)頁(yè)面靜態(tài)化實(shí)現(xiàn)中可結(jié)合使用。由于真靜態(tài)實(shí)現(xiàn)方式與靜態(tài)頁(yè)面制作方式相同,本文不再贅述。下面給出ASP.NET下偽靜態(tài)和折中法的實(shí)現(xiàn)方式。

        1.1 偽靜態(tài)實(shí)現(xiàn)方式

        偽靜態(tài)實(shí)現(xiàn)依賴對(duì)用戶請(qǐng)求的URL地址重寫。在ASP.NET框架下,可以使用框架中提供的HttpModule對(duì)HTTP請(qǐng)求進(jìn)行攔截,對(duì)請(qǐng)求的地址進(jìn)行驗(yàn)證。如果符合重寫要求即將URL地址轉(zhuǎn)換成動(dòng)態(tài)頁(yè)面形式,在服務(wù)器端對(duì)用戶請(qǐng)求進(jìn)行重定向。具體實(shí)現(xiàn)步驟為:①新建一個(gè)類,實(shí)現(xiàn)IHttpModule接口,命名為StaticModule;②在新建類中定義一個(gè)EventHandler委托類型方法,命名為context_BeginRequest;③在context_BeginRequest方法中獲取用戶請(qǐng)求的原始URL;④對(duì)原始URL進(jìn)行驗(yàn)證(可使用正則表達(dá)式),如果驗(yàn)證成功則生成真實(shí)的URL地址;⑤在服務(wù)器端將用戶請(qǐng)求重定向到真實(shí)的URL地址;⑥重寫IHttpModule接口中的Init方法,將context_BeginRequest方法綁定到請(qǐng)求處理之前觸發(fā)的事件中;⑦在web.config配置文件中注冊(cè)StaticModule。

        1.2 折中法實(shí)現(xiàn)方式

        折中法實(shí)現(xiàn)關(guān)鍵在于如何在靜態(tài)頁(yè)面不存在的情況下自動(dòng)生成靜態(tài)頁(yè)面。在ASP.NET框架下,可以使用框架中提供的HttpHandler[3]對(duì)Http請(qǐng)求進(jìn)行處理,提供關(guān)鍵參數(shù),生成真實(shí)靜態(tài)頁(yè)面地址,判斷靜態(tài)頁(yè)面文件是否存在。如果存在,則直接返回靜態(tài)頁(yè)面文件,否則就生成靜態(tài)頁(yè)面文件。在生成靜態(tài)頁(yè)面文件時(shí),為了提高生成效率,可以提前準(zhǔn)備好靜態(tài)頁(yè)面模板,運(yùn)用特殊符號(hào)標(biāo)簽作為占位符,在生成頁(yè)面時(shí)只需對(duì)占位符進(jìn)行替換即可。實(shí)現(xiàn)步驟:①制作靜態(tài)頁(yè)面模板Template.html,模板中用特殊符號(hào)(如:{$xxxx})作為內(nèi)容占位符;②新建一個(gè)類,實(shí)現(xiàn)IHttpHandler接口,命名為StaticHandler;③重寫IHttpHandler接口中的ProcessRequest方法,在其中獲取用戶請(qǐng)求的URL地址,并將其轉(zhuǎn)換為真實(shí)的靜態(tài)頁(yè)面地址;④判斷上一步生成的真實(shí)靜態(tài)頁(yè)面是否存在,如果存在則直接將頁(yè)面返回,否則讀取靜態(tài)頁(yè)面模板Template.html,將模板中的占位符替換為真實(shí)數(shù)據(jù),將文件另存為靜態(tài)頁(yè)面文件并將其返回給客戶端;⑤在web.config配置文件中注冊(cè)StaticHandler。

        2 頁(yè)面靜態(tài)化實(shí)現(xiàn)方案選擇策略

        從性能角度考慮,應(yīng)該優(yōu)先選擇真靜態(tài)和折中法進(jìn)行頁(yè)面靜態(tài)化,特性越接近靜態(tài)頁(yè)面的動(dòng)態(tài)頁(yè)面,其靜態(tài)化價(jià)值越大,即讀取頻率越高、更新頻率越低的頁(yè)面越適合靜態(tài)化。讀寫比[4]是定量參數(shù),即進(jìn)行一次靜態(tài)化操作后,下一次被靜態(tài)化前該網(wǎng)頁(yè)讀取的次數(shù)。網(wǎng)站可以根據(jù)實(shí)際需求設(shè)置讀寫比閾值(記為p)。當(dāng)網(wǎng)頁(yè)讀寫比大于p時(shí),靜態(tài)化對(duì)性能有提升,反之,盲目靜態(tài)化就會(huì)增加服務(wù)器的文件讀寫工作量,反而影響效率。

        如圖1所示,對(duì)頁(yè)面進(jìn)行分類,其中讀寫比函數(shù)f(x)=px為靜態(tài)化方案選擇的分界線,分界線之上的Ⅱ區(qū)頁(yè)面可以選擇折中法,其中寫頻率較低的Ⅰ區(qū)頁(yè)面可以考慮使用真靜態(tài)法;而分界線以下的Ⅲ區(qū)頁(yè)面就不適合頻繁讀寫的靜態(tài)網(wǎng)頁(yè)文件,從搜索引擎友好性和安全性考慮,更適合使用偽靜態(tài)法實(shí)現(xiàn)。

        3 結(jié)語(yǔ)

        本文分析了動(dòng)態(tài)頁(yè)面靜態(tài)化實(shí)現(xiàn)方案,即真靜態(tài)、偽靜態(tài)和折中法,并給出了偽靜態(tài)和折中法在ASP.NET框架下的實(shí)現(xiàn)。偽靜態(tài)主要利用HttpModule對(duì)Http請(qǐng)求進(jìn)行攔截,從而重定向頁(yè)面地址;折中法主要利用HttpHandler生成并返回真實(shí)的靜態(tài)頁(yè)面文件。3種實(shí)現(xiàn)方案各有特點(diǎn),應(yīng)根據(jù)不同的動(dòng)態(tài)頁(yè)面選擇不同的實(shí)現(xiàn)方案。讀寫比是一個(gè)可供分類網(wǎng)頁(yè)的參數(shù),讀寫比高的頁(yè)面可使用折中法實(shí)現(xiàn),更新頻率極低的頁(yè)面可考慮使用真靜態(tài)法,而讀寫比低的頁(yè)面可使用偽靜態(tài)法實(shí)現(xiàn)。

        參考文獻(xiàn):

        [1]趙志勤,朱永虎,林玉鳳.面向數(shù)據(jù)分析的Web頁(yè)面靜態(tài)化方法研究與實(shí)現(xiàn)[J].現(xiàn)代計(jì)算機(jī),2014 (13):37-40.

        [2]曾小燕,周統(tǒng)鋼.基于數(shù)據(jù)集成的頁(yè)面靜態(tài)化方法在政務(wù)網(wǎng)站的應(yīng)用[J].電腦知識(shí)與技術(shù),2014,10(15):3695-3696.

        [3]沈陽(yáng).基于HttpHandler的頁(yè)面靜態(tài)化[J].數(shù)字技術(shù)與應(yīng)用,2012 (1):50-51.

        [4]白萬(wàn)民,吳夫丹,白小軍.Web應(yīng)用中的網(wǎng)頁(yè)靜態(tài)化技術(shù)研究[J].西安工業(yè)大學(xué)學(xué)報(bào),2014,34(1):34-37.

        (責(zé)任編輯:杜能鋼)

        久久精品国产亚洲av久| 国产福利一区二区三区视频在线看| 羞涩色进入亚洲一区二区av| 99久久精品在线视频| 无码尹人久久相蕉无码| 四虎精品视频| 国产主播一区二区在线观看| 少妇被爽到高潮喷水免费福利| 久久伊人少妇熟女大香线蕉| 亚洲日韩国产精品第一页一区| 国产精品亚洲国产| 国产女人精品一区二区三区| 午夜成人理论福利片| 天天综合亚洲色在线精品| 国产在线视频h| 国产韩国一区二区三区| 久久性爱视频| 美女高潮无遮挡免费视频| 亚洲a∨好看av高清在线观看| 91一区二区三区在线观看视频| 美女高潮黄又色高清视频免费| 一二三四在线视频社区3| 人妻少妇精品一区二区三区| 国产剧情av麻豆香蕉精品| 亚洲av永久无码精品放毛片| 欧美成人激情在线| 亚洲天堂av免费在线| 无遮挡激情视频国产在线观看| 亚洲国产美女精品久久久 | 久久久国产精品va麻豆| 亚洲av日韩av不卡在线观看| h动漫尤物视频| 日韩肥臀人妻中文字幕一区| 国产裸体xxxx视频在线播放| 加勒比无码专区中文字幕| 一区二区三区四区国产亚洲| 4hu四虎永久免费地址ww416| 久久丫精品国产亚洲av| 国产精品人人爱一区二区白浆| 亚洲字幕中文综合久久| 人人爽人人爱|