亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

asp緩存技術,提高asp承載能力

2019-11-17 04:14:33
字體:
來源:轉載
供稿:網友

一、什么是asp緩存/為什么要緩存

其實當你的web站點采用asp技術建立的初期,可能會感覺到的是asp動態網頁技術帶來的便利性,以及隨意修改性、自如的http控制。但隨著訪問量的增加,你一定會發現自己的站點訪問速度會越來越慢,IIS重新啟動得越來越頻繁。那么,你一定想怎么優化你的asp程序,諸如更換性能更優異的數據庫、建立索引、編寫存儲過程等等。這些措施有些不需要增加成本壓力,有些則成本壓力很大(譬如叢access到SQL),而且效果還不一定。

面對web訪問壓力,我認為最經濟的辦法是利用緩存優化技術來實現緩解web的服務壓力。

Web訪問量增加通常意味著以下資源需求的快速增長:

1、網卡流量增加,需要消耗更多的CPU處理網絡流量和網絡I/O線程。

2、需要更頻繁的打開/關閉數據庫連結(如果使用數據庫技術—通常asp都會采用數據庫作為數據存儲),嚴重消耗資源的事物數量、以及事務相互競爭資源引起的死鎖、會增加網絡I/O或者CPU消耗。

3、如果采用session的話,IIS為了維持狀態,會消耗更多內存,而內存消耗可能會引發物理內存不夠,引起物理內存同輔存間的頻繁交換,從而引起代碼執行的停頓,web響應阻滯。

4、由于訪問的不到及時響應,會引起網頁訪問故障,導致用戶刷新,從而加劇CPU、內存等資源需求。

實際上,考慮通常的web應用程序,很多時候的動態代碼執行是不必要的。

二、asp緩存的分類

擅自總結,asp的緩存可以分為兩類:

1、文件緩存

所謂文件緩存,就是根據邏輯判斷,一段時間內某個asp的特定執行將不會有很大的變動,因而將內容以靜態html的形式存放,然后以web的重定向技術讓客戶端訪問靜態文件,以達到減少CPU、數據庫資源等的需求。這樣的應用很多,譬如很多論壇就是在回復貼子的時候將整個貼子重新生成一個靜態文件,然后進行重定向的,例如 donews.com的論壇。該成靜態還有一個副作用(好處)--可以很容易被google等搜索引擎收錄。一些所謂新聞發布系統的都采用了此技術。

2、文件片斷緩存

所謂文件緩存,也是基于邏輯判斷,某部分數據(通常是需要消耗資源的大容量數據庫查詢取得)在一定時間內不會改變,所以我們可以將這些數據利用文件的形式進行存儲,當需要時候,可以通過讀取文件來獲取數據,避免增加數據庫的負擔。例如,我們通常將一些數據以xml格式存儲,然后利用xslt技術實現顯示(xml處理通常需要大量CPU資源,所以通常是IE直接讀取xml到客戶端在客戶的CPU上進行處理)。CSDN的論壇就是這樣處理的。

3、主存緩存

除此之外,還可以考慮在內存中處理緩存,將需要及時響應的內容存儲在內存中,一旦訪問需求,立即從快速的貯存中輸送出去。如果極大量的訪問需求集中在幾個少量的頁面或者主存足夠多,我想采用主存緩存一定可以大幅度提高web訪問性能。

三、如何實現/使用緩存

實現緩存需要考慮以下問題:

1、哪些頁面會在短時間內不會改變?

分析自己的站點,這樣的頁面很多。譬如一個站點通常都有新聞資訊類的欄目,這些欄目通常都是站點維護人員在一天的某個時間發布資料,之后很少改動頁面。那么這些頁面就適合于采用靜態文件緩存。實際上,所謂新聞發布系統就是這么做的,那么那也可以參考這些系統的思想改造自己的原有動態asp頁面。

2、那些頁面針對全部訪問者都采用同一個邏輯生成(也就是不區分訪問者)。

除了新聞資訊之類的欄目所有訪問者都看一個界面外,論壇等消耗資源的應用一般也可以設計成統一邏輯生成(同一個貼子,張三李四看的都一樣),針對這類應用頁面我們也可以采用靜態緩存來實現。也可以考慮將數據片斷化,利用腳本技術在服務器處理能力之外也就是客戶端瀏覽器進行處理。

3、采用緩存的代價和收獲。

主要就是“空間換(響應)時間”。利用緩存技術將之后頻繁需要的內容進行預處理,使之提高web服務器響應能力,更重要贏得訪問者的歡心。

代價就是web空間需求增加,同時又可能影響到訪問效果。

但我認為適當的緩存,是利大于弊的。

4、那些地方不適宜采用緩存

動態查詢頁面,每個人的查詢內容不一樣,所以顯示結果不大一樣,所以不大可能將查詢結果生成緩存,所以采用緩存較為復雜且緩存利用率底下,造成管理成本上什(假設你緩存了1000個查詢關鍵字,那么管理這些關鍵字同緩存的對應也是麻煩事)。

四、實例分析

假設一個建議論壇的原有布局如下:

根目錄下:

default.asp首頁,一般是精華、推薦之類

listBorad.asp 該文件列出全部分欄目的名稱和介紹,如果攜帶參數MainBID就表示要列出板塊下的欄目

listThread.asp該文件如果不攜帶任何參數表示列出全部的貼子,攜帶MainBID表示列出某塊的全部貼子。如果攜帶subBID表示列出具體欄目的貼子。如果攜帶page參數表示分頁列出主題。

ViewThread.asp 列出某個貼子內容。我們假設貼子顯示為一個發言,任意跟貼全部列在后面。ID參數為要顯示的貼子。

Reply.asp 回應某個貼子,攜帶參數Id回應某個貼子

其它的暫不討論。

以上,我們可以看到,如果全部是采用原始的ASP/php來做,那幾乎每一個asp文件的執行都需要數據庫操作,頻繁的查詢,多表查詢。要知道查詢數據庫最終會帶來性能的下降,響應速度下降,帶給訪問者緩慢的瀏覽影響,不利于web的質量。更重要的是對于甲乙兩個人來將,他們訪問ViewThread.asp之類的如果ID一致,那么很多時候他們會看到同樣的內容(他們的瀏覽器收到的HTML代碼幾乎一樣),但是為了這“同樣的內容”,服務器需要打開數據庫連結、查詢,讀取紀錄,顯示,關閉紀錄、數據庫連結。。。。以下列的消耗服務器資源的操作,如果是更多的人來訪問,最終的結果是這些人加劇消耗服務器資源。實際上,這些為了“同樣的內容”所做的重復勞動是可以利用緩存技術進行優化避免的。譬如:

在reply.asp提交內容后,我們立即調用生成靜態的功能,將整個貼子內容存儲為viewThread_xxxx.htm之類的靜態html文件,再通常情況下訪問viewThread.asp?ID=xxxx的時候,系統自動redirect到對應的靜態文件viewThreadxxxx.htm去。這樣,當一個貼子沒有最新發布時候,他始終是靜態內容提供給瀏覽者;一旦有了新的提交,將會更新到靜態文件中去,這樣,將會節省很多次數據庫操作,大大提高響應速度。

listBorad.asp也可以實施靜態化。我們可以分析其可能攜帶的參數,將緩存文件名設定為listBoard_xx.htm,在增加新的欄目時候進行更新listBoard_xxx.htm。listThread.asp也類似,只不過由于其參數更多,所以緩存文件也會很多。擊若要緩存listThread.asp? subBID=xxx&page=2,那么對應的靜態文件是listThread_xxx_p2.htm。default.asp也一樣。

那么如何判斷什么時候更新?在什么時機更新?

討論listThread.asp? subBID=xxx&page=2,我們在執行listThread.asp俄時候提取subID和page,然后探測listThread_xxx_p2.htm是否存在,如果不存在就調用靜態生成功能進行生成該文件,最終重定向到此靜態文件。注意,此處的不存在就意味著出現了新的內容需要我們進行更新。

那如何造成文件不存在呢?刪除。我們在發表一個新的貼子、刪除貼子、移動貼子的時候我們可以將類似listThread_xxx_p2.htm之類的靜態文件全部刪除。這樣就通知了何時要進行緩存。

現在還剩下一個問題,如何生成靜態文件?

我們注意到,之前我們提到的“同樣的內容”。我們可以將改造前的default.asp、listThread.asp等拷貝一個副本,取名為default_d.asp、listThread_2.asp,且在同一個目錄中(理論上listThtrad.asp?subID=123同LISTtHREAD_D.ASP?SUBID=123的訪問結果會是同樣的內容),這樣我們在需要生成靜態文件的邏輯中,通過WEB訪問請求的方式調用改造前的副本,得到html代碼,并存儲為靜態文件。這個web請求實際上相當于在任何真實瀏覽者訪問靜態內容之前,由服務器自身現察看將會輸出的html,然后返回這些代碼,利用文件操作功能存儲為靜態文件。這樣,緩存文件就在真正瀏覽者之前被創建。

這樣的方案幾乎不觸動原來的布局,幾乎不會造成因為改造出現404之類的錯誤。其次,靜態文件也會幫助你的站點容易被被google之類的搜索引擎收錄。何樂而不為?

最后,提醒,通過web訪問,asp編程環境下,很多人采用xmlhttp組件訪問,這會造成很多問題。xmlhttp自身會cache請求的資源,導致我們通過此組件請求得到的內容不是最新的,造成邏輯上的混亂。所以,應當選擇xml Server http對象或者winhttp組件來實現web請求資源。

80摘后語:實現緩存技術主要有幾種關鍵的東西,

服務器端application,適用于多個頁面間存在較多不太經常更新的元素;
生成HTML靜態文件,通常會采用模版技術,通過fso或ADOStream生成靜態文件,通常都適用于很多人看到的都是同樣的頁面內容的情況,如文章、論壇帖子等;
其他
其實最重要的還是根據自己系統的需求來決定采用何種技術,盡量少地減少查詢數據庫的次數,減輕數據庫壓力,當然,一般會以犧牲空間做代價。

另外,正在考慮是否能夠采用客戶端的緩存來提高效率?


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久伊人精品一区二区三区| 欧美精品中文字幕一区| 亚洲香蕉成人av网站在线观看| 欧美性xxxxxx| 国产成人精品最新| 亚洲色图国产精品| 国产精品专区第二| 国产日韩欧美自拍| 国产精品视频成人| 亚洲国产日韩精品在线| 美女福利视频一区| 日韩av一区二区在线| 国模私拍一区二区三区| 91手机视频在线观看| 国产精品嫩草影院一区二区| 一区二区三区动漫| 久久久www成人免费精品| 伊人一区二区三区久久精品| 欧美性极品少妇精品网站| 亚洲精品网址在线观看| 欧美激情综合色| 少妇高潮 亚洲精品| 日韩在线观看免费高清| 欧美—级高清免费播放| 欧美另类在线播放| 成人www视频在线观看| 亚洲精品女av网站| 欧美贵妇videos办公室| 91久久综合亚洲鲁鲁五月天| 亚洲第一福利网站| 欧美性猛交xxxx黑人| 米奇精品一区二区三区在线观看| 国产情人节一区| 国产精品福利在线| 成人免费福利在线| 日韩av123| 96精品久久久久中文字幕| 欧美日韩精品在线| 海角国产乱辈乱精品视频| 欧美成人免费播放| 欧美激情第一页xxx| 日韩欧美aⅴ综合网站发布| 亚洲精品第一页| 亚洲丁香婷深爱综合| 国产精品av在线| 欧美日韩福利视频| 欧美猛男性生活免费| 欧美自拍大量在线观看| 亚洲视频axxx| 国产人妖伪娘一区91| 色综合视频一区中文字幕| 精品久久中文字幕久久av| 国产精品jizz在线观看麻豆| 日韩av观看网址| 欧美肥老太性生活视频| 成人亲热视频网站| 久久久久久999| 亚洲成年人在线播放| 欧美激情视频在线观看| 久久久久一本一区二区青青蜜月| 91精品国产色综合久久不卡98| 日韩va亚洲va欧洲va国产| 欧洲中文字幕国产精品| 日韩欧美一区二区三区| 91成人性视频| 国产欧美一区二区| 久久好看免费视频| 美女久久久久久久久久久| 亚洲网站在线播放| 亚洲女人被黑人巨大进入al| 亚洲综合日韩中文字幕v在线| 中文字幕国内精品| 欧美成人激情图片网| 国外成人免费在线播放| 欧美疯狂xxxx大交乱88av| 国产日韩欧美中文在线播放| 中文字幕不卡av| 亚洲区免费影片| 国产91亚洲精品| 国产精品私拍pans大尺度在线| 久久亚洲欧美日韩精品专区| 欧美日韩国产精品一区二区不卡中文| 久久久噜噜噜久久中文字免| 久久精品视频导航| 国产免费一区二区三区在线观看| 欧美国产日韩在线| 亚洲午夜精品久久久久久久久久久久| 久青草国产97香蕉在线视频| 亚洲天堂av高清| 欧美精品一区在线播放| 亚洲综合国产精品| 亚洲国产精品yw在线观看| 日韩精品在线视频| 久久成人国产精品| 亚洲精品日韩在线| 亚洲乱码av中文一区二区| 久久久久一本一区二区青青蜜月| 久久影视电视剧凤归四时歌| 亚洲精品中文字幕有码专区| 欧美国产乱视频| 日韩欧美中文字幕在线播放| 中文字幕一精品亚洲无线一区| 国产99久久精品一区二区永久免费| 欧美视频在线视频| 午夜精品视频网站| 久久综合国产精品台湾中文娱乐网| 一本久久综合亚洲鲁鲁| 清纯唯美亚洲激情| 狠狠做深爱婷婷久久综合一区| 亚洲国产欧美日韩精品| 一本一本久久a久久精品牛牛影视| 欧美日韩在线视频一区二区| 国产欧美精品xxxx另类| 亚洲欧洲视频在线| 欧美美最猛性xxxxxx| 国产精品老女人精品视频| 欧美黑人巨大xxx极品| 26uuu另类亚洲欧美日本老年| 精品久久久中文| 亚洲午夜激情免费视频| 一本一本久久a久久精品综合小说| 成人啪啪免费看| 青青草原成人在线视频| 日本精品久久电影| 久久99亚洲精品| 国产精品视频不卡| 欧美日韩xxxxx| 国产欧美亚洲精品| 在线电影中文日韩| 国内久久久精品| 亚洲欧美另类自拍| 精品国产一区二区三区久久狼黑人| 国产免费久久av| 国产精品久久久久福利| 国产日韩欧美在线播放| 国产深夜精品福利| 国产亚洲欧美另类中文| 亚洲国产精久久久久久| 亚洲精品久久久久久久久久久久| 精品视频在线播放色网色视频| 亚洲国内精品在线| 日本亚洲欧洲色| 激情亚洲一区二区三区四区| 欧美寡妇偷汉性猛交| 国产精品极品美女粉嫩高清在线| 97视频免费观看| 欧美视频裸体精品| 亚洲精品久久久久中文字幕欢迎你| 国产精品igao视频| 欧美另类极品videosbest最新版本| 欧美大全免费观看电视剧大泉洋| 欧美日韩中文字幕日韩欧美| 免费91麻豆精品国产自产在线观看| 麻豆国产精品va在线观看不卡| 深夜成人在线观看| 亚洲色图狂野欧美| 国产91精品久久久| 国产欧美日韩免费看aⅴ视频| 国产精品亚洲综合天堂夜夜| 精品福利免费观看| 国产91精品视频在线观看| 亚洲国产另类 国产精品国产免费| 日韩va亚洲va欧洲va国产| 精品久久久国产精品999|