.NET 中的Cache

來源:互聯網
上載者:User
       緩衝使得你可以快速的擷取記憶體中儲存的資料。當再次訪問資料的時候,應用從緩衝中擷取資料,而不是從資料的原始源擷取。這麼做可以提高效能和擴充性。另外,當資料來源臨時停用時候,緩衝使得資料還是可用的。        你可以用.NET提供的緩衝功能提高應用的效能和擴充性,緩衝功能可以在windows用戶端應用中使用,也可以在ASP.NET這種服務端應用中使用。 

Note

在.NET Framework3.5和更早的版本中,ASP.NET提供了一個記憶體緩衝的實現,放在System.Web.Caching命名空間下。所以在之前版本的.NET架構中,緩衝只能通過System.Web命名空間擷取,因此需要依賴一個ASP.NET類。在.NET Framwork4中,在System.Runtime.Caching命名空間下的緩衝介面,Web應用和非Web應用都可以使用。

  Caching Data你可以使用System.Runtime.Caching命名空間下的類快取資料。提供了下面的功能:提供了一些抽象的類型,你可以繼承這些抽象的類型,實現自己的緩衝。一個具體的實現好的記憶體緩衝。 抽象基類提供了下面的功能:
  • 建立並管理緩衝。
  • 指定到期和收回。
  • 在緩衝資訊改變的時候觸發事件。
 MemoryCache類是一個實現ObjectCache類的記憶體緩衝,你可以用它來完成大部分的工作。 MemoryCache類的原型定義在System.Web.Caching空間中的ASP.NET緩衝對象,因此,內部的緩衝邏輯和早期的ASP.NET提供的緩衝邏輯很相似。  在ASP.NET應用中使用緩衝使用System.Runtime.Caching中提供的緩衝類可以給ASP.NET應用提供緩衝功能。 

Note 

如果你的ASP.NET應用是以.NET 3.5或者更早的版本為基礎,你必須使用System.Web.Caching空間下的緩衝類。

 如果你是開發一個新的應用,推薦使用MemoryCache類。因為System.Runtime.Caching空間提供的介面和System.Web.Caching空間提供的介面很相似,如果你使用過早期版本的ASP.NET的話,你會感覺很親切。  輸出緩衝需要手動快取應用中的資料,你可以在ASP.NET中使用MemoryCache類。ASP.NET也支援輸出緩衝,在記憶體中儲存已經產生的頁面、控制項和http響應。你可以在ASP.NET頁面中配置輸出緩衝,也可以在web.config中配置。 OutputCache 系統緩衝全解析2:網頁輸出快取 ASP.NET也允許你通過建立自訂輸出緩衝provider來擴充輸出緩衝。在自訂的provider中,你可以使用其他存放裝置,例如:磁碟,雲端儲存,分布式緩衝,來儲存輸出緩衝的內容。建立自訂provider,你需要繼承OutputCacheProvider類,並且在web.config中配置使用你自訂的provider。  擴充.NET Framework中的緩衝.NET Framework中的緩衝被設計成可擴充的。ObjectCache類使得你可以建立自己的緩衝實現。這個類提供了一些所有託管應用,例如:windows froms,wpf,wcp,都可用的成員。你可以建立自己的緩衝,提供一個不同的儲存機制,或者是你想要更小粒度的控制緩衝的操作。 可以通過下面的方式實現一個自訂緩衝:
  • 建立一個繼承ObjectCache的類,提供自訂的緩衝實現。
  • 建立一個整合MemoryCache的類,提供自訂的緩衝實現。Caching Application Data by Using Multiple Cache Objects in an ASP.NET 
  • 建立一個繼承OutputCacheProvider的類,並且配置應用使用這個自訂的輸出緩衝provider。Extensible
    Output Caching with ASP.NET 4 (VS 2010 and .NET 4.0 Series)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.