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

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

OutputCache屬性詳解(一)一Duration、VaryByParam

2019-11-17 01:45:52
字體:
來源:轉載
供稿:網友

OutputCache屬性詳解(一)一Duration、VaryByParam

目錄

  • OutputCache概念學習

  • OutputCache屬性詳解(一)

  • OutputCache屬性詳解(二)

  • OutputCache屬性詳解(三)

  • OutputCache屬性詳解(四)— SqlDependency

Duration與CachePRofile屬性

Duration:頁或用戶控件進行緩存的時間(以秒計)。在頁或用戶控件上設置該特性為來自對象的 HTTP 響應建立了一個過期策略,并將自動緩存頁或用戶控件輸出。

CacheProfile:與該頁關聯的緩存設置的名稱。這是可選特性,默認值為空字符串 ("")。

測試OutputCache準備

在Visual Studio中,新建website項目,并修改頁面信息如下:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server">    <title></title></head><body>    <form id="form1" runat="server">    <div>        <%=DateTime.Now %>    </div>    </form></body></html>

打開 Fiddler 工具,在瀏覽器中打開頁面,我們可以看到Fiddler 跟蹤到的響應信息如下:

并且每次刷新Fiddler所返回的狀態碼都是200,而且頁面輸出時間在不斷變化,如下:

我們修改項目,在website下的Web.config文件中添加如下配置:

  <system.web>    <caching>      <outputCacheSettings>        <outputCacheProfiles>           <!--name 緩存配置名稱           duration 緩存的時間(以秒計)           enabled  指定緩存有效           -->          <add name="outputCache60" duration="60" enabled="true" varyByParam="*" />        </outputCacheProfiles>      </outputCacheSettings>    </caching>    <compilation debug="true"/>  </system.web>

并修改頁面信息為,增加 <%@ OutputCache CacheProfile="outputCache60" %>:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><%@ OutputCache CacheProfile="outputCache60"  %><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server">    <title></title></head><body>    <form id="form1" runat="server">    <div>    <%=DateTime.Now %>      </div>    </form></body></html>

同樣利用 Fiddler 跟蹤,得到的信息如下:

我們可以看到 Response Heades 所返回的Cache與不加緩存時返回的完全不一樣(多了 Date 和 Expires 節點),加緩存后的時間范圍與配置文件中時間一致,相差60秒(duration="60")。

加緩存后,第一次數據請求的狀態為200,而之后請求返回的狀態都是304,而且頁面所輸出的時間一直未變。(超過60秒后第一次刷新,時間會變化,且狀態變為200)

HTTP 304: Not Modified客戶端有緩沖的文檔并發出了一個條件性的請求(一般是提供If-Modified-Since頭表示客戶只想比指定日期更新的文檔)。服務器告訴客戶,原來緩沖的文檔還可以繼續使用。

VaryByParam屬性

分號分隔的字符串列表,用于使輸出緩存發生變化。默認情況下,這些字符串對應于使用 GET 方法特性發送的查詢字符串值,或者使用 POST 方法發送的參數。將該特性設置為多個參數時,對于每個指定參數組合,輸出緩存都包含一個不同版本的請求文檔。

可能的值包括 none、星號 (*) 以及任何有效的查詢字符串或 POST 參數名稱。

varyByParam="none" 當 VaryByParam 設置為 none 時,將不考慮任何參數;無論提供什么附加參數,都將向所有用戶發送相同的頁:

下面是Fiddler跟蹤的信息:

可以看到,參數改變時數據請求都是200(第二次為304),但是頁面上的數據則全是相同的副本,如下:

VaryByParam =“*”對于每個唯一的請求參數組合,將緩存一個唯一頁

如圖中所示,不管所傳的參數為id,code還是para 只要值有所變化時,就會請求服務器,不會讀取緩存數據(需要注意的是資源文件如img,js,CSS等還是會走緩存的)

而且其頁面上的數值也是變化的,如下:

但是,將 VaryByParam 設置為 * 會緩存頁的許多不同版本,所以如果您知道緩存變化所依據的參數,建議您在 VaryByParam 特性中顯式指定這些參數。

如varyByParam="id;code" 或者 varyByParam="id" 表示當 id;code 或者 id 參數變化時,發生給客戶端不同頁。

我這邊配置文件修改為

 <add name="outputCache60" duration="60" enabled="true" varyByParam="id;code" />

Fiddler跟蹤的信息如下:

參數改變都會當成一個新的數據請求,但是返回給客戶端的數據則不同,如下:

id和code變化時,輸出內容會隨參數變化,但para無論參數怎么變化,輸出的結果都是一樣的。

該章只是簡單介紹了Duration,CacheProfile,VaryByParam屬性 ,如有錯誤或者問題請各路大神指正!

作者:釋迦苦僧 出處:http://www.49028c.com/woxpp/p/3975209.html本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品国产三级国产专播精品人| 午夜精品99久久免费| 欧美成人免费大片| 亚洲аv电影天堂网| 精品人伦一区二区三区蜜桃网站| 成人国产精品一区二区| 九九热99久久久国产盗摄| 亚洲a级在线观看| 青青草精品毛片| 久久人人看视频| 国产成人鲁鲁免费视频a| 91久久精品国产91久久性色| 日本不卡视频在线播放| 久久久在线免费观看| 日韩精品福利网站| 91精品久久久久久久久久另类| 日韩电影免费观看在线观看| 成人国产在线视频| 最新亚洲国产精品| 精品动漫一区二区三区| 国产精品国内视频| 久久夜精品香蕉| 欧美激情一级二级| 91在线免费视频| 97精品一区二区三区| 国产v综合v亚洲欧美久久| 亚洲欧美日韩直播| 午夜剧场成人观在线视频免费观看| 日韩中文综合网| 国产精品久久久久秋霞鲁丝| 久久综合88中文色鬼| 日本19禁啪啪免费观看www| 91爱视频在线| 97视频人免费观看| 亚洲欧美综合区自拍另类| 8x拔播拔播x8国产精品| 欧美一级大片视频| 中文国产成人精品久久一| 91国语精品自产拍在线观看性色| 欧美资源在线观看| 中文字幕日韩电影| 欧美性xxxxhd| 精品国产一区久久久| 91av在线影院| 96精品久久久久中文字幕| 91精品国产自产在线| 欧美巨大黑人极品精男| 久久九九国产精品怡红院| 欧美激情a∨在线视频播放| 中文字幕在线看视频国产欧美在线看完整| 久久亚洲精品小早川怜子66| 国产精品无码专区在线观看| 日本久久久久久久| 亚洲毛茸茸少妇高潮呻吟| 久热爱精品视频线路一| 亚洲无限乱码一二三四麻| 久久好看免费视频| 精品久久久视频| 国产精品2018| 97精品国产97久久久久久免费| 午夜美女久久久久爽久久| 日本电影亚洲天堂| 伊人久久久久久久久久久久久| 亚洲精品小视频| 国产精品第一区| 日本精品中文字幕| 亚洲欧美日韩一区二区三区在线| 成人看片人aa| 久久精品国产欧美亚洲人人爽| 国产91精品最新在线播放| 国产精品久久网| 日韩国产精品亚洲а∨天堂免| 91久久精品美女高潮| 国产精品久久av| 国产精品高清在线| 日韩成人av网址| 久久天天躁狠狠躁夜夜爽蜜月| 亚洲精品网址在线观看| 欧美激情精品久久久| 九九精品视频在线观看| 久久成人人人人精品欧| 激情成人在线视频| 97国产suv精品一区二区62| 九九热精品视频国产| 国产综合久久久久| 最新国产精品拍自在线播放| 欧美激情精品在线| 91在线直播亚洲| 亚洲精品欧美日韩专区| 日韩精品视频免费在线观看| 国产精品成人观看视频国产奇米| 欧美在线激情视频| 91成人在线观看国产| 国产精品91久久久久久| 亚洲激情视频网站| 亚洲国产成人精品一区二区| 亚洲在线免费视频| 日韩欧美在线视频观看| 亚洲成人黄色在线| 91精品国产综合久久男男| 国产欧美va欧美va香蕉在| 亚洲精品福利在线观看| 国产精品久久色| 26uuu亚洲伊人春色| 亚洲视频专区在线| 最近更新的2019中文字幕| 欧美一乱一性一交一视频| 亚洲国产精品999| 久久夜精品va视频免费观看| 久久成人这里只有精品| 久久久亚洲影院| 高潮白浆女日韩av免费看| 不卡在线观看电视剧完整版| 亚洲性夜色噜噜噜7777| 亚洲日本aⅴ片在线观看香蕉| 亚洲aa中文字幕| 国产精品日韩欧美| 国产丝袜一区二区三区免费视频| 91沈先生在线观看| 在线日韩av观看| 国产69精品久久久久99| 欧美国产精品日韩| 国产精品久久9| 国产精品狼人色视频一区| 精品日本高清在线播放| 国产精品电影久久久久电影网| 欧美第一黄网免费网站| 亚洲淫片在线视频| 欧美另类极品videosbestfree| 国产美女久久精品| 91精品视频在线免费观看| 欧美在线亚洲一区| 国产精品久久视频| 一本色道久久综合亚洲精品小说| 91九色蝌蚪国产| 久久久天堂国产精品女人| 美女福利视频一区| 欧美另类69精品久久久久9999| 波霸ol色综合久久| 亚洲影院高清在线| 亚洲一区二区三区毛片| 国产97在线|日韩| 日韩美女在线观看| 国产精品欧美激情| 日韩在线观看免费av| 国产一区欧美二区三区| 国产精品av在线播放| 国产做受高潮69| 久久久久在线观看| 91精品在线观看视频| 一区二区三欧美| 91精品视频专区| 日韩欧美中文第一页| 91在线观看免费| 国产欧美精品xxxx另类| 久久精品国产一区二区电影| 久久资源免费视频| 韩国欧美亚洲国产| 亚洲国产精品久久| 亚洲美女动态图120秒| 92国产精品视频| 日韩精品中文在线观看| 久久综合网hezyo| 国产精品美女久久|