成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何避免ASP.NET緩存占用系統(tǒng)資源

開發(fā) 后端
ASP.Net支持兩種類型的緩存:數(shù)據(jù)緩存和頁面緩存。本文介紹避免ASP.NET緩存占用系統(tǒng)資源的一些小技巧。

ASP.NET緩存概述

ASP.Net支持兩種類型的緩存:數(shù)據(jù)緩存和頁面緩存。數(shù)據(jù)緩存允許你保留正常在關(guān)聯(lián)以外的數(shù)據(jù),并在完成頁面處理后為垃圾收集做好準(zhǔn)備。頁面緩存允許將頁面輸出保存在服務(wù)器中,然后從內(nèi)存中恢復(fù)它們,而不是重新進(jìn)行處理。兩種緩存機(jī)制都提供使緩存無效的功能。

當(dāng)一個(gè)數(shù)據(jù)元素在緩存以外時(shí),你或者可以采用回調(diào)重新生成它,或者在需要它時(shí)查看它是否還在原處,然后再重新生成它。如果緩存無效,頁面緩存會(huì)重新對(duì)頁面進(jìn)行處理。

有效利用緩存的訣竅在于理解它代表的權(quán)衡關(guān)系。緩存使用內(nèi)存,而內(nèi)存是一種相當(dāng)有限的資源。如果內(nèi)存運(yùn)行緩慢,ASP.Net會(huì)清掃緩存。幸運(yùn)的是,在清掃過程中,你可以設(shè)置優(yōu)先,保留一些項(xiàng)目。如果沒有這些線索,首先清除舊的和很少使用的項(xiàng)目。

因此,在緩存中存儲(chǔ)許多大型對(duì)象或頁面可能會(huì)產(chǎn)生負(fù)作用。如果對(duì)象或頁面在緩存中保存的時(shí)間不夠長(zhǎng),不足以抵消緩存中固有的管理費(fèi)用,那么性能就會(huì)出現(xiàn)凈下滑。

還要認(rèn)識(shí)到,緩存并不常用的數(shù)據(jù)完全是浪費(fèi)系統(tǒng)資源。此外,緩存經(jīng)常需要使其無效的數(shù)據(jù)(以頁面視圖百分比,而不是每天的次數(shù)來測(cè)量)也是一種浪費(fèi)。例如,緩存每小時(shí)顯示三或四次,但每?jī)煞昼娋托枰匦律傻墓善毙星槭珍浧骶褪菍?duì)服務(wù)器內(nèi)存的浪費(fèi)。

ASP.NET緩存的進(jìn)化

ASP.Net緩存也在不斷進(jìn)化。在決定是否使用它時(shí),確定你評(píng)估的是將在應(yīng)用程序上運(yùn)行的同一個(gè)版本的緩存。例如,.Net 1.1 Framework沒有SQL Server緩存,但.Net 2.0和3.0有SQL Server緩存。確實(shí),.Net 3.0中的緩存相當(dāng)簡(jiǎn)單,它只有三種類型的失效(時(shí)間、文件改變和鍵改變)。

讓SQL Server自動(dòng)使緩存失效也相當(dāng)有趣。在SQL Server 2000中,你需要定期檢查數(shù)據(jù)庫,僅查看是否有一個(gè)表發(fā)生了改變。SQL Server 2005探測(cè)緩存并告訴它失效,它也支持行級(jí)失效。老實(shí)說,雖然這似乎是一個(gè)非常好并且有用的特性,但它也建立了大量的廠商鎖定。

你***是使用鍵緩存讓你的應(yīng)用程序的應(yīng)用層來處理緩存。雖然這樣做可能不如行級(jí)改變的自動(dòng)通知那樣迅速有效,但你可以用一個(gè)精心設(shè)計(jì)的數(shù)據(jù)庫來達(dá)到幾乎相同的目的:用緩存中的對(duì)象來保留記錄的主記錄ID(如雇員表的記錄ID),然后把數(shù)據(jù)庫中那個(gè)主記錄的失效層疊到其它相關(guān)的緩存項(xiàng)目(如那名雇員的薪水冊(cè)數(shù)據(jù))。雖然這樣做可能要付出一定的努力,但你會(huì)獲得回報(bào),讓應(yīng)用程序保持廠商中立。

雖然緩存好像是提高性能的妙方,但你必須謹(jǐn)慎地使用它。如果對(duì)進(jìn)行緩存的數(shù)據(jù)選擇不當(dāng),就可能傷害到你的性能或浪費(fèi)服務(wù)器資源,使得問題比以前更加惡化。衡量你的選項(xiàng)并執(zhí)行一些負(fù)載測(cè)試看看緩存是否有用。

***的方法可能是仿造應(yīng)用程序的一個(gè)速成版本;一旦它模擬后端性能后(有意減速以復(fù)制處理時(shí)間),再把它放在一個(gè)現(xiàn)實(shí)的負(fù)載下,看看緩存能否提高性能。

安裝和使用頁面緩存相當(dāng)方便,至少具有簡(jiǎn)單的失效(時(shí)間、文件)規(guī)則,但試用應(yīng)用程序數(shù)據(jù)緩存和更加高級(jí)的頁面失效功能可能需要預(yù)先做大量的工作才能生成現(xiàn)有的代碼。應(yīng)用緩存需要提前進(jìn)行規(guī)劃,而不能事后才追悔,認(rèn)為它能提高性能。

【編輯推薦】

  1. .NET緩存機(jī)制探討與比對(duì)
  2. 概述ASP.NET緩存機(jī)制
  3. ASP.NET數(shù)據(jù)緩存之?dāng)?shù)據(jù)緩存淺談
  4. ASP.NET數(shù)據(jù)緩存機(jī)制淺析
  5. ASP.NET頁面輸出緩存
責(zé)任編輯:yangsai 來源: Justin James的博客
相關(guān)推薦

2009-07-31 10:23:44

緩存頁面ASP.NET緩存

2009-07-29 10:35:51

ASP.NET緩存

2009-07-31 10:33:54

ASP.NET頁面輸出

2009-08-04 15:22:33

ASP.NET緩存機(jī)制

2009-07-29 14:35:34

頁面輸出緩存ASP.NET

2009-07-27 16:37:42

ASP.NET主機(jī)

2009-08-03 18:35:51

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

2009-05-11 13:48:00

ASP.NET 2.0緩存效率

2009-08-17 16:59:36

ASP.NET緩存機(jī)制

2009-08-03 18:47:12

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

2009-07-29 16:15:03

asp.net在線學(xué)習(xí)

2009-07-29 15:34:13

2009-07-29 15:38:01

2011-10-19 09:41:15

ASP.NET性能優(yōu)化

2009-11-09 08:53:21

ASP.NET緩存

2009-07-31 09:57:47

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

2009-08-03 14:22:33

什么是ASP.NET

2009-07-28 17:17:19

ASP.NET概述

2009-07-31 09:47:57

ASP.NET緩存

2009-08-17 17:36:57

ASP.NET緩存數(shù)據(jù)
點(diǎn)贊
收藏

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

主站蜘蛛池模板: 欧美高清hd | 精品国产不卡一区二区三区 | 一区中文字幕 | 欧美xxxx色视频在线观看免费 | 成年人网站免费视频 | 国产日产欧产精品精品推荐蛮挑 | 欧美综合国产精品久久丁香 | 日韩视频一区二区在线 | 国产色网站 | 美女视频一区 | 亚洲一区毛片 | 欧美成人精品激情在线观看 | 国产欧美一区二区三区另类精品 | 国产丝袜一区二区三区免费视频 | 久久精品二区亚洲w码 | 日韩在线观看一区二区三区 | 国产欧美日韩在线一区 | 欧美专区在线 | 国产一区二区三区欧美 | 国产最新精品视频 | 欧美激情一区二区 | www中文字幕| 日本a v在线播放 | 国产99久久久国产精品 | 91精品国产乱码久久蜜臀 | 久久国产精品精品国产色婷婷 | 可以免费观看的av | 日韩电影免费观看中文字幕 | 国产亚洲一区二区三区 | 中文字幕第十页 | 超碰在线播 | 在线看av网址 | 国产99久久精品一区二区永久免费 | 国产91视频播放 | 91一区二区 | 91精品国产综合久久国产大片 | 国产一级视频在线播放 | 欧美日韩在线免费 | 伊人网站在线 | 欧美天堂| 亚洲精品久久久一区二区三区 |