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

首頁 > 編程 > .NET > 正文

ASP.NET緩存方法分析和實踐示例代碼第1/2頁

2024-07-10 13:21:09
字體:
來源:轉載
供稿:網友
內存現在非常便宜 — 因此,通過以智能的方式在整個應用程序中實現緩存,可以獲得很大的性能提高。緩存可以掩蓋許多過失 緩存是一種無需大量時間和分析就可以獲得“足夠良好的”性能的方法。
這里再次強調,內存現在非常便宜,因此,如果您能通過將輸出緩存 30 秒,而不是花上一整天甚至一周的時間嘗試優化代碼或數據庫就可以獲得所需的性能,您肯定會選擇緩存解決方案(假設可以接受 30 秒的舊數據)。緩存正是那些利用 20% 付出獲得 80% 回報的特性之一,因此,要提高性能,應該首先想到緩存。
 
不過,如果設計很糟糕,最終卻有可能帶來不良的后果,因此,您當然也應該盡量正確地設計應用程序。但如果您只是需要立即獲得足夠高的性能,緩存就是您的最佳選擇,您可以在以后有時間的時候再盡快重新設計應用程序。 頁面級輸出緩存 作為最簡單的緩存形式,輸出緩存只是在內存中保留為響應請求而發送的 HTML 的副本。其后再有請求時將提供緩存的輸出,直到緩存到期,這樣,性能有可能得到很大的提高(取決于需要多少開銷來創建原始頁面輸出 - 發送緩存的輸出總是很快,并且比較穩定)。實現 要實現頁面輸出緩存,只要將一條 OutputCache 指令添加到頁面即可。
<%@ OutputCache Duration="60" VaryByParam="*" %>如同其他頁面指令一樣,該指令應該出現在 ASPX 頁面的頂部,即在任何輸出之前。它支持五個屬性(或參數),其中兩個是必需的。Duration 必需屬性。頁面應該被緩存的時間,以秒為單位。必須是正整數。Location 指定應該對輸出進行緩存的位置。如果要指定該參數,則必須是下列選項之一:Any、Client、Downstream、None、Server 或 ServerAndClient.  VaryByParam 必需屬性。Request 中變量的名稱,這些變量名應該產生單獨的緩存條目。"none" 表示沒有變動。"*" 可用于為每個不同的變量數組創建新的緩存條目。變量之間用 "; " 進行分隔。VaryByHeader 基于指定的標頭中的變動改變緩存條目。
 
VaryByCustom 允許在 global.asax 中指定自定義變動(例如,"Browser")。利用必需的 Duration 和 VaryByParam 選項的組合可以處理大多數情況。例如,如果您的產品目錄允許用戶基于 categoryID 和頁變量查看目錄頁,您可以用參數值為 "categoryID; page" 的 VaryByParam 將產品目錄緩存一段時間(如果產品不是隨時都在改變,一小時還是可以接受的,因此,持續時間是 3600 秒)。這將為每個種類的每個目錄頁創建單獨的緩存條目。每個條目從其第一個請求算起將維持一個小時?!?VaryByHeader 和 VaryByCustom 主要用于根據訪問頁面的客戶端對頁面的外觀或內容進行自定義。同一個 URL 可能需要同時為瀏覽器和移動電話客戶端呈現輸出,因此,需要針對不同的客戶端緩存不同的內容版本。
 
或者,頁面有可能已經針對IE 進行了優化,但需要能針對 Netscape 或 Opera 完全降低優化(而不僅僅是破壞頁面)。后一個例子非常普遍,我們將提供一個說明如何實現此目標的示例:示例:VaryByCustom 用于支持瀏覽器自定義 為了使每個瀏覽器都具有單獨的緩存條目,VaryByCustom 的值可以設置為 "browser".此功能已經內置在緩存模塊中,并且將針對每個瀏覽器名稱和主要版本插入單獨的頁面緩存版本。
<%@ OutputCache Duration="60" VaryByParam="None" VaryByCustom="browser" %>片段緩存,用戶控件輸出緩存 緩存整個頁面通常并不可行,因為頁面的某些部分是針對用戶定制的。不過,頁面的其他部分是整個應用程序共有的。這些部分最適合使用片段緩存和用戶控件進行緩存。菜單和其他布局元素,尤其是那些從數據源動態生成的元素,也應該用這種方法進行緩存。如果需要,可以將緩存的控件配置為基于對其控件(或其他屬性)的更改或由頁面級輸出緩存支持的任何其他變動進行改變。使用同一組控件的幾百個頁面還可以共享那些控件的緩存條目,而不是為每個頁面保留單獨的緩存版本。實現 片段緩存使用的語法與頁面級輸出緩存一樣,但其應用于用戶控件(。ascx 文件)而不是 Web 窗體(。aspx 文件)。除了 Location 屬性,對于 OutputCache 在 Web 窗體上支持的所有屬性,用戶控件也同樣支持。用戶控件還支持名為 VaryByControl 的 OutputCache 屬性,該屬性將根據用戶控件(通常是頁面上的控件,例如,DropDownList)的成員的值改變該控件的緩存。
 
如果指定了 VaryByControl,可以省略 VaryByParam.最后,在默認情況下,對每個頁面上的每個用戶控件都單獨進行緩存。不過,如果一個用戶控件不隨應用程序中的頁面改變,并且在所有頁面都使用相同的名稱,則可以應用 Shared="true" 參數,該參數將使用戶控件的緩存版本供所有引用該控件的頁面使用。

示例<%@ OutputCache Duration="60" VaryByParam="*" %>該示例將緩存用戶控件60 秒,并且將針對查詢字符串的每個變動、針對此控件所在的每個頁面創建單獨的緩存條目。

 
<%@ OutputCache Duration="60" VaryByParam="none" VaryByControl="CategoryDropDownList" %>該示例將緩存用戶控件 60 秒,并且將針對 CategoryDropDownList控件的每個不同的值、針對此控件所在的每個頁面創建單獨的緩存條目。

 
<%@ OutputCache Duration="60" VaryByParam="none" VaryByCustom="browser" Shared="true %>最后,該示例將緩存用戶控件 60 秒,并且將針對每個瀏覽器名稱和主要版本創建一個緩存條目。然后,每個瀏覽器的緩存條目將由引用此用戶控件的所有頁面共享(只要所有頁面都用相同的 ID 引用該控件即可)。頁面級和用戶控件級輸出緩存的確是一種可以迅速而簡便地提高站點性能的方法,但是在 ASP.NET 中,緩存的真正靈活性和強大功能是通過 Cache 對象提供的。使用 Cache 對象,您可以存儲任何可序列化的數據對象,基于一個或多個依賴項的組合來控制緩存條目到期的方式。這些依賴項可以包括自從項被緩存后經過的時間、自從項上次被訪問后經過的時間、對文件和/或文件夾的更改以及對其他緩存項的更改,在略作處理后還可以包括對數據庫中特定表的更改。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
另类专区欧美制服同性| 在线播放精品一区二区三区| 亚洲免费小视频| 在线观看精品国产视频| 亚洲精品电影在线观看| 国产午夜精品一区二区三区| 国产精品美女在线观看| 国产精品无av码在线观看| 欧美黑人极品猛少妇色xxxxx| 亚洲欧美日本精品| 亚洲免费视频观看| 中文字幕欧美亚洲| 亚洲人成电影网站色| 亚洲精品在线91| 7777精品久久久久久| 国产ts人妖一区二区三区| 亚洲精品福利资源站| 日韩在线免费视频观看| 91精品国产一区| 91高清在线免费观看| 亚洲毛片在线免费观看| 日韩中文字幕精品视频| 97国产精品人人爽人人做| 最好看的2019的中文字幕视频| 日韩在线视频中文字幕| 最好看的2019年中文视频| 国产一区欧美二区三区| 黄色成人av在线| 成人黄色免费在线观看| 韩国欧美亚洲国产| 国产精自产拍久久久久久| 国产精品综合网站| 国产精品免费电影| 欧美精品手机在线| 亚洲另类激情图| 日韩av网址在线观看| 国产精品羞羞答答| 亚洲国产精品成人va在线观看| 欧美日韩不卡合集视频| 色伦专区97中文字幕| 久久久精品999| 国产精品电影网| 国产中文日韩欧美| 久久久久国色av免费观看性色| 久久青草精品视频免费观看| 欧美日韩国产成人高清视频| 欧美韩日一区二区| 亚洲欧洲在线观看| 亚洲美女动态图120秒| 九九久久国产精品| 九九精品在线播放| 国产精品免费一区| 欧美高清视频在线| 欧美日韩高清在线观看| 97涩涩爰在线观看亚洲| 日韩av网站在线| 日韩成人激情在线| 中文字幕精品久久久久| 美女久久久久久久久久久| 亚洲自拍小视频免费观看| 亚洲精品av在线| 亚洲天堂色网站| 欧美性生交xxxxxdddd| 亚洲欧洲免费视频| 日本成人黄色片| 性欧美办公室18xxxxhd| 日韩视频永久免费观看| 国产精品久久综合av爱欲tv| 91免费观看网站| 正在播放欧美视频| 国产精品电影网站| 亚洲精品videossex少妇| 日韩av毛片网| 欧美性猛交xxxxx免费看| 91手机视频在线观看| 亚洲乱码国产乱码精品精天堂| 福利视频一区二区| 欧美国产高跟鞋裸体秀xxxhd| 亚洲最新av在线网站| 亚洲自拍欧美另类| 色狠狠av一区二区三区香蕉蜜桃| 91精品啪在线观看麻豆免费| 97超级碰碰碰| 亚洲第一国产精品| 久久久精品2019中文字幕神马| 日韩av在线高清| 亚洲成人精品视频| 性欧美激情精品| 亚洲性69xxxbbb| 久久久久久久久久国产| 亚洲精品免费一区二区三区| 97视频在线观看亚洲| 97高清免费视频| 久久久999精品免费| 亚洲欧美综合另类中字| 亚洲精品99久久久久中文字幕| 国产suv精品一区二区| 国产精品久久久久久久久粉嫩av| 国产精品美腿一区在线看| 欧美性猛交丰臀xxxxx网站| 国产免费亚洲高清| 亚洲精品国产欧美| 国产美女高潮久久白浆| 91国内揄拍国内精品对白| 一区二区亚洲精品国产| 欧美另类69精品久久久久9999| 日韩欧中文字幕| 色偷偷91综合久久噜噜| 久久亚洲影音av资源网| 91精品视频在线播放| 欧美激情在线有限公司| 成人性生交大片免费观看嘿嘿视频| 亚洲男人天堂网站| 国产精品老女人视频| 91夜夜揉人人捏人人添红杏| 91精品国产高清自在线| 久久国产精彩视频| 亚洲欧美日韩一区在线| 国产精品入口尤物| 久久天堂av综合合色| 亚洲欧美一区二区三区在线| 欧美综合在线观看| 成人黄色在线观看| 日韩不卡在线观看| 日韩在线欧美在线| 亚洲人午夜精品| 国产一级揄自揄精品视频| 精品露脸国产偷人在视频| 91精品国产电影| 欧美美女18p| 欧美高清视频免费观看| 欧美日韩在线免费观看| 亚洲高清av在线| 国产视频自拍一区| 国产91色在线免费| 另类图片亚洲另类| 日韩视频免费观看| 超碰精品一区二区三区乱码| 亚洲日本中文字幕| 在线观看国产精品淫| 国产有码一区二区| 色99之美女主播在线视频| 最近2019好看的中文字幕免费| 日韩精品亚洲视频| 国产成人精品久久二区二区| 欧美在线欧美在线| 亚洲九九九在线观看| 国产精品一区二区三区在线播放| 亚洲影院在线看| 精品爽片免费看久久| 伊人久久久久久久久久久久久| 亚洲精品福利在线观看| 992tv成人免费视频| 亚洲最新av在线| 在线免费观看羞羞视频一区二区| 91精品久久久久久久久久久| 亚洲va码欧洲m码| 国产精品吹潮在线观看| 日韩高清av一区二区三区| 精品成人av一区| 91chinesevideo永久地址| 国产一区二中文字幕在线看| 国产综合久久久久| 国产精品∨欧美精品v日韩精品|