自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

ASP.NET數(shù)據(jù)庫緩存淺析

開發(fā) 后端
ASP.NET數(shù)據(jù)庫緩存是什么?ASP.NET數(shù)據(jù)庫緩存的特點又是什么呢?那么本文就向你介紹這方面的情況。

ASP.NET數(shù)據(jù)庫緩存是什么呢?首先我們來認識一下ASP.NET數(shù)據(jù)庫緩存淺析,為了創(chuàng)建可擴展、高性能的基于Web的應(yīng)用,ASP.NET提供一個稱為數(shù)據(jù)緩存(Data Caching)的特性。數(shù)據(jù)緩存支持將頻繁訪問的數(shù)據(jù)對象可編程地存放在內(nèi)存中。這一特性可擴展以廣泛地提高查詢Oracle數(shù)據(jù)庫中數(shù)據(jù)的ASP.NET應(yīng)用的性能。本文講述一個策略,可用于采用Web Farm環(huán)境中的ASP.NET Web應(yīng)用緩存Oracle數(shù)據(jù)庫數(shù)據(jù)。這個技巧允許在內(nèi)存中緩存頻繁訪問的Oracle數(shù)據(jù)庫數(shù)據(jù),而不是頻繁訪問數(shù)據(jù)庫來取數(shù)據(jù)。這可以幫助避免到Oracle數(shù)據(jù)庫服務(wù)器的不必要的遠路。進一步的,文章提出了一個保持緩存數(shù)據(jù)以使其始終與Oracle數(shù)據(jù)同步的實現(xiàn)。
ASP.NET中的數(shù)據(jù)緩存

ASP.NET數(shù)據(jù)庫緩存淺析由Cache類和System.Web.Caching命名空間中的CacheDependency類支持。Cache類提供向緩存插入和從中取出數(shù)據(jù)的方法。CacheDependency類允許為緩存中數(shù)據(jù)項的指定其依賴項。當我們用Insert和Add方法將項目加入緩存中,可以指定一個項目的過期(expiration)策略。我們可以用Insert方法的absoluteExpiration屬性來定義緩存中一個項目的生命期。這個屬性允許你指定相應(yīng)數(shù)據(jù)項過期的準確時間。也可以使用slidingExpiration屬性來指定項目過期的流逝時間(基于它被訪問的時間)。一旦一個項目過期,它從緩存中被清除。除非它再次被加入緩存中,否則再試圖訪問,將返回一個空值。

設(shè)定緩存依賴

ASP.NET數(shù)據(jù)庫緩存淺析使我們可以基于一個外部文件、目錄或另一個緩存項來定義一個緩存項的依賴,即所謂文件依賴與鍵依賴。若一個依賴項改變,緩存項自動失效并被從緩存中清除。當相應(yīng)的數(shù)據(jù)源改變時,我們可以用這種方法來從緩存中刪除項目。例如,若我們的應(yīng)用從一個XML文件中取數(shù)據(jù)并顯示在一個表格(grid)中,我們可以把文件中的數(shù)據(jù)存放到緩存中,并設(shè)定緩存依賴于那個XML文件。當XML文件被更新,數(shù)據(jù)項就從緩存中被清除出去。這一事件發(fā)生時,應(yīng)用重新讀入XML文件,***的數(shù)據(jù)項副本被再一次插入緩存中。進一步的,回調(diào)事件處理器可被設(shè)定為一個監(jiān)聽者,當緩存項被刪除時得到通知。這使得我們不需要反復輪詢緩存來確定數(shù)據(jù)項是否已無效。

Oracle數(shù)據(jù)庫上的ASP.NET緩存依賴

現(xiàn)在考慮這樣一個情景:數(shù)據(jù)存放于Oracle數(shù)據(jù)庫中,一個ASP.NET應(yīng)用通過ADO.NET來訪問。進一步,我們假設(shè)數(shù)據(jù)庫表中的數(shù)據(jù)一般是靜態(tài)的,并被這個Web應(yīng)用頻繁訪問。表上的DML操作很少而對數(shù)據(jù)有很多Select。這種情況是數(shù)據(jù)緩存技術(shù)的理想應(yīng)用。但不幸的是,ASP.NET并不允許設(shè)定一個緩存項依賴于存放在數(shù)據(jù)庫表中的數(shù)據(jù)。進一步,現(xiàn)實世界中,基于Web的系統(tǒng),Web服務(wù)器和Oracle數(shù)據(jù)庫服務(wù)器總是會運行在不同的機器上,使得緩存無效操作更有挑戰(zhàn)性。另外,多數(shù)基于Web的應(yīng)用采用Web farms,同一個應(yīng)用的實例在不同的Web服務(wù)器上跑以負載均衡。這種情況使得數(shù)據(jù)庫緩存問題稍稍復雜一些。

ASP.NET數(shù)據(jù)庫緩存的基本情況就向你介紹到這里,希望對你了解ASP.NET數(shù)據(jù)庫緩存有所幫助。

【編輯推薦】

  1. ASP.NET項目開發(fā)中應(yīng)用程序異常處理淺析
  2. ASP.NET項目開發(fā)中常見異常處理及web.config配置淺析
  3. ASP.NET項目開發(fā)中健康監(jiān)視淺析
  4. ASP.NET緩存概念及其應(yīng)用淺析
  5. ASP.NET緩存分析和實踐淺析
責任編輯:仲衡 來源: IT專家網(wǎng)
相關(guān)推薦

2009-08-03 18:35:51

ASP.NET數(shù)據(jù)緩存

2009-07-28 17:36:21

ASP.NET數(shù)據(jù)庫連

2009-07-29 09:12:31

ASP.NET數(shù)據(jù)庫連

2009-07-27 17:58:10

ASP.NET數(shù)據(jù)庫編

2009-07-29 09:33:14

ASP.NET數(shù)據(jù)庫連

2009-07-31 09:47:57

ASP.NET緩存

2009-08-05 09:38:28

SQL Server數(shù)

2009-07-24 11:35:08

2009-07-31 09:32:04

ASP.NET緩存概念ASP.NET緩存應(yīng)用

2009-10-10 10:44:15

ASP.NET頁面緩存

2009-07-31 12:43:59

ASP.NET MVC

2009-08-05 15:50:13

ASP.NET優(yōu)點

2009-02-23 15:20:03

SQL Server數(shù)據(jù)庫ASP.NET

2009-07-24 13:41:15

ASP.NET AJA

2009-08-05 18:36:12

ASP.NET Che

2009-08-03 18:47:12

ASP.NET數(shù)據(jù)緩存

2009-08-10 13:32:15

ASP.NET TimASP.NET組件設(shè)計

2009-08-07 15:34:15

ASP.NET數(shù)據(jù)綁定

2009-08-04 15:20:59

ASP.NET數(shù)據(jù)驗證數(shù)據(jù)驗證控件

2009-08-04 10:02:36

中國站長站
點贊
收藏

51CTO技術(shù)棧公眾號