国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

ASP.NET中的Cache使用介紹

2024-07-10 13:29:03
字體:
來源:轉載
供稿:網友

這篇文章主要介紹了ASP.NET中的Cache使用介紹,本文講解了Cache 是怎么工作的、Cache 怎么創建及怎么銷毀、什么時候用cache、cache 調用注意事項等內容,需要的朋友可以參考下

Cache 即高速緩存 ,我想非常多人對他的第一印象一定像我相同,感覺他一定能提高系統得性能和運行速度。的確。Net推出cache的初衷確實是這樣的。那么cache是怎么提高系統性能和運行速度呢?是不是在所有情況下用cache都能提高性能?是不是cache用的越多就越好呢?我在近期研發的項目中有所體會,寫下來當作總結也希望能跟大家一起探討探討,有錯誤的地方希望大家批評指正。

1.Cache 是怎么工作的

Cache 是分配在服務器上的一個公共的內存片。

所謂公共指的cache只要一創建是所有一個客戶端瀏覽器都能通過后臺代碼訪問到他,他面向的是所有用戶,相對而言session也是服務器上的一段內存,但他面向的是單個用戶。他是服務器的一段內存塊,也就是說每個cache一經創建就占用了服務器資源的。所以從這點來說我們就能說:并不是cache越多越好。

cache 是有時間限制的,超過了服務器設定的過期時間,他就會被服務器回收。

c.cache 能存放所有對象

2.Cache 怎么創建及怎么銷毀

創建cache

在。Net環境下通過Cache.Insert(string key,object o)方法創建。其中key 代表cache的ID,o代表存到cache里的對象。

銷毀cache.

通過方法Cache.Remove(string key)其中key 代表cache的 ID.

調用cache.

Cache支持裝箱/拆箱操作。如你能把一個DataSet對象ds通過Cache.Insert(“dsCache”,ds)的方式存到Cache中,能通過拆箱操作 DataSet ds = (DataSet)Cache[“dsCache”]來訪問他。

3.什么時候用cache

Cache 一般用于數據較固定,用的較頻繁的地方。例如能把進銷存系統中能把產品信息存入cache,在用戶調用產品信息時通過調用cache即可,這樣從非常大程度上減少了用戶和數據庫的交互,提高了系統的性能。反之,cache不適合用在數據變動快,使用范圍非常窄的地方。例如把一個具體采購單存入 cache中。

4.cache 調用注意事項

Cache是有時間限制的。超過了服務器設置的過期時間,就會被服務器回收。當cache被回收后對應的內存塊就會被清空,再次通過cache[“cachekey”]訪問對象時返回的就是null值。所以以下這種調用就會出現異常

 

 
  1. DataSet ds = (DataSet)Cache[“cacheds”]; 
  2.  
  3. DataRow dr = ds.Table[0].Row[0]; //出錯,ds為null值,不存在表0。 

正確的寫法應該是:

 

 
  1. DataSet ds 
  2.    
  3.   If(Cache[“cacheds”] != null
  4.    
  5.   { 
  6.    
  7.   ds = (DataSet)Cache[“cacheds”]; 
  8.    
  9.   } 
  10.    
  11.   Else 
  12.    
  13.   { 
  14.    
  15.   ds= GetDsFromDataBase(); 
  16.    
  17.   } 
  18.    
  19.   DataRow dr = ds.Table[0].Row[0]; 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 高邮市| 乌海市| 密山市| 宝山区| 天柱县| 新密市| 萨迦县| 房产| 濉溪县| 岳阳县| 芦溪县| 榆树市| 孝昌县| 桦甸市| 呼图壁县| 兴仁县| 仁怀市| 弥勒县| 葫芦岛市| 凤翔县| 康乐县| 无为县| 珠海市| 邹城市| 理塘县| 常熟市| 博白县| 阳城县| 海林市| 巫山县| 江油市| 广元市| 宁都县| 井陉县| 泰兴市| 桐柏县| 盐源县| 修文县| 绵竹市| 巩义市| 齐齐哈尔市|