aspNet 緩存 (Cache)

aspNet 緩存 (Cache)

ID:40745936

大小:30.02 KB

頁(yè)數(shù):18頁(yè)

時(shí)間:2019-08-07

aspNet 緩存 (Cache)_第1頁(yè)
aspNet 緩存 (Cache)_第2頁(yè)
aspNet 緩存 (Cache)_第3頁(yè)
aspNet 緩存 (Cache)_第4頁(yè)
aspNet 緩存 (Cache)_第5頁(yè)
資源描述:

《aspNet 緩存 (Cache)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。

1、asp.net?cache?緩存介紹分析及用法說(shuō)明緩存主要是為了提高數(shù)據(jù)的讀取速度。因?yàn)榉?wù)器和應(yīng)用客戶端之間存在著流量的瓶頸,所以讀取大容量數(shù)據(jù)時(shí),使用緩存來(lái)直接為客戶端服務(wù),可以減少客戶端與服務(wù)器端的數(shù)據(jù)交互,從而大大提高程序的性能。???本章從緩存所在的命名空間“System.Web.Caching”開始,詳細(xì)介紹框架提供的緩存類和操作方法,主要涉及簡(jiǎn)單數(shù)據(jù)的緩存、數(shù)據(jù)緩存依賴和數(shù)據(jù)庫(kù)緩存依賴三個(gè)技術(shù)要點(diǎn),最后演示一個(gè)完全使用緩存實(shí)現(xiàn)數(shù)據(jù)讀取的實(shí)例。講解流程如圖16-1所示。:16.1?System.Web.Caching簡(jiǎn)介本節(jié)從緩存命

2、名空間的總體簡(jiǎn)介和組成結(jié)構(gòu)入手,從整體上對(duì)System.Web.Caching進(jìn)行概述。16.1.1?System.Web.Caching概述System.Web.Caching是用來(lái)管理緩存的命名空間。緩存就是將服務(wù)器端的數(shù)據(jù)暫時(shí)保存在客戶端,方便用戶的讀取。緩存命名空間的父級(jí)空間是“System.Web”,由此可以看出,緩存通常用于Web網(wǎng)站的開發(fā),包括在B/S項(xiàng)目中的開發(fā)。緩存的設(shè)計(jì)主要是考慮到網(wǎng)絡(luò)帶寬可能會(huì)延緩數(shù)據(jù)的提交和回發(fā),如果將數(shù)據(jù)保存在客戶端,用戶可以直接從客戶端讀取數(shù)據(jù),這樣數(shù)據(jù)就是從本地提取的,不會(huì)再受網(wǎng)絡(luò)的影響。Syste

3、m.Web.Caching命名空間提供與緩存有關(guān)的所有操作類,具體包括哪些類將在下一節(jié)詳細(xì)介紹。16.1.2?System.Web.Caching命名空間內(nèi)的類組成緩存命名空間主要提供三種操作:緩存數(shù)據(jù)對(duì)象、對(duì)象的緩存依賴和數(shù)據(jù)庫(kù)的緩存依賴。其中緩存任何對(duì)象都使用一個(gè)類Cache,但當(dāng)緩存發(fā)生改變時(shí),普通對(duì)象和數(shù)據(jù)庫(kù)對(duì)象的依賴處理不同。圖16-2羅列的是在三層結(jié)構(gòu)中緩存的部署情況。兩個(gè)依賴類CacheDependency和SqlCacheDependency主要更改發(fā)生變化的緩存數(shù)據(jù),起到通知的作用。當(dāng)數(shù)據(jù)沒有被緩存時(shí),使用Cache類進(jìn)行添加

4、。下面根據(jù)圖16-2的部署,來(lái)介紹圖中使用的緩存類。這些類的說(shuō)明如表16-1所示。?圖16-2?三層結(jié)構(gòu)中緩存的部署圖表16-1?緩存命名空間中的類及其說(shuō)明?Cache?對(duì)緩存對(duì)象的編輯類,其操作包括緩存的增、刪、改?CacheDependency?基本緩存對(duì)象的依賴,當(dāng)基本對(duì)象發(fā)生變化時(shí),更新緩存內(nèi)容?SqlCacheDependency?數(shù)據(jù)庫(kù)緩存對(duì)象的依賴,當(dāng)數(shù)據(jù)庫(kù)中的數(shù)據(jù)變化時(shí),更新緩存內(nèi)容?16.2?管理緩存的類:Cache類Cache類用來(lái)存儲(chǔ)數(shù)據(jù)對(duì)象,并提供方法對(duì)這些對(duì)象進(jìn)行編輯。本節(jié)主要介紹Cache類包含的方法,以及如何使用這

5、些方法實(shí)現(xiàn)數(shù)據(jù)對(duì)象的緩存。16.2.1?功能說(shuō)明Cache類屬于字典類,其根據(jù)一定的規(guī)則存儲(chǔ)用戶需要的數(shù)據(jù),這些數(shù)據(jù)的類型不受限制,可以是字符串、數(shù)組、數(shù)據(jù)表、Dataset和哈希表等。使用Cache類的優(yōu)點(diǎn)是當(dāng)緩存的數(shù)據(jù)發(fā)生變化時(shí),Cache類會(huì)讓數(shù)據(jù)失效,并實(shí)現(xiàn)緩存數(shù)據(jù)的重新添加,然后通知應(yīng)用程序,報(bào)告緩存的及時(shí)更新。16.2.2?語(yǔ)法定義Cache類的語(yǔ)法定義如下:publicsealedclassCache:IEnumerable通過(guò)其定義可以發(fā)現(xiàn),Cache類是“sealed”定義的類,表示此類被密封,不能被繼承。同時(shí)Cache類還繼

6、承了IEnumerable接口,表示允許對(duì)集合中的數(shù)據(jù)進(jìn)行枚舉操作。緩存的生命周期隨著應(yīng)用程序域的活動(dòng)結(jié)束而終止,也就是說(shuō)只要應(yīng)用程序域依然處于活動(dòng)狀態(tài),緩存就會(huì)一直保持,因?yàn)槊總€(gè)應(yīng)用程序域都會(huì)創(chuàng)建一個(gè)緩存實(shí)例。此實(shí)例的信息通過(guò)HttpContext對(duì)象的Cache屬性或Page對(duì)象的Cache屬性獲取。下面的代碼演示如何將數(shù)組數(shù)據(jù)添加到緩存中:ArrayListmyarray=newArrayList();???????//創(chuàng)建數(shù)組數(shù)據(jù)myarray.Add("1.學(xué)習(xí)園地");myarray.Add("2.交流論壇");myarray.Ad

7、d("3.幫助");Cache.Add("Category",myarray);???????//將數(shù)組添加到緩存中16.2.3?方法詳解Cache類的方法主要提供對(duì)緩存數(shù)據(jù)的編輯操作,如增、刪、改等。其中最常用的方法及其說(shuō)明如表16-2所示。表16-2?Cache類的主要方法及其說(shuō)明?Add?將數(shù)據(jù)添加到Cache對(duì)象?Insert?向Cache中插入數(shù)據(jù)項(xiàng),可用于修改已經(jīng)存在的數(shù)據(jù)緩存項(xiàng)?Remove?移除Cache對(duì)象中的緩存數(shù)據(jù)項(xiàng)?Get?從Cache對(duì)象中獲取指定的數(shù)據(jù)項(xiàng),注意返回的是Object類型,需要進(jìn)行類型轉(zhuǎn)換?GetType

8、?從Cache對(duì)象中獲取數(shù)據(jù)項(xiàng)的類型,判斷數(shù)據(jù)類型后,方便進(jìn)行轉(zhuǎn)換?GetEnumerator?循環(huán)訪問(wèn)Cache對(duì)象中的緩存數(shù)據(jù)項(xiàng)。注意其返回類型是

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。