麻豆成人91精品二区三区,国产91在线播放,加勒比无码专区中文字幕,欧美黑人XXXX高潮猛交

×

十個(gè)常見的緩存使用誤區(qū)及建議

  • 作者:新網(wǎng)
  • 來源:新網(wǎng)
  • 瀏覽:100
  • 2015-03-25 16:42:18

在日常工作中,開發(fā)者經(jīng)常利用緩存來優(yōu)化站點(diǎn)或應(yīng)用程序,然而在實(shí)際應(yīng)用中,大家使用緩存時(shí),總會(huì)存在或多或少的誤區(qū),反而影響了站點(diǎn)或應(yīng)用程序的正常運(yùn)行。近日,highscalability上的一篇文章總結(jié)了十大使用緩存的誤區(qū)和建議。

在日常工作中,開發(fā)者經(jīng)常利用緩存來優(yōu)化站點(diǎn)或應(yīng)用程序,然而在實(shí)際應(yīng)用中,大家使用緩存時(shí),總會(huì)存在或多或少的誤區(qū),反而影響了站點(diǎn)或應(yīng)用程序的正常運(yùn)行。近日,highscalability上的一篇文章總結(jié)了十大使用緩存的誤區(qū)和建議。

現(xiàn)就對這十大緩存誤區(qū)以及使用建議進(jìn)行一個(gè)全面的梳理:

1、依賴默認(rèn)的序列化方式

使用默認(rèn)的序列化處理方式可能會(huì)消耗大量的CPU資源,尤其是處理復(fù)雜類型數(shù)據(jù)時(shí)。所以建議大家一定要根據(jù)所使用語言和環(huán)境的情況,采用最合理、有效的序列化和反序列化方式。

2、在單一緩存中存儲(chǔ)大對象數(shù)據(jù)

由于序列化和反序列化需要一定的資源開銷,當(dāng)處于高并發(fā)高負(fù)載的情況下,對大對象數(shù)據(jù)的頻繁讀取有可能會(huì)使得服務(wù)器的CPU崩潰,所以建議大家把大對象數(shù)據(jù)分成為較小的子對象,然后再各自進(jìn)行緩存。

3、在不同線程間使用緩存共享對象

在競態(tài)條件(Race conditions)條件下,當(dāng)寫線程對緩存進(jìn)行寫入操作時(shí),如果這是讀線程剛好也要訪問同一緩沖對象,就有可能讀取臟數(shù)據(jù),所以在實(shí)際開發(fā)中要根據(jù)實(shí)際情況采取外部鎖機(jī)制,以保證緩存數(shù)據(jù)的正確讀寫。

4、認(rèn)為存儲(chǔ)數(shù)據(jù)操作后,數(shù)據(jù)即刻就能存儲(chǔ)到緩存中

剛進(jìn)行寫入緩存操作的數(shù)據(jù)并不一定能夠馬上寫入緩存,這是因?yàn)楫?dāng)緩存空間不足時(shí),剛寫入的緩存有可能被刷新掉。所以在編寫程序時(shí),應(yīng)該首先對獲得緩存的值作空值檢測。

5、使用嵌套對象存儲(chǔ)整個(gè)集合

如果將整個(gè)集合對象數(shù)據(jù)進(jìn)行嵌套緩存的話,獲得其中某個(gè)具體元素的性能將會(huì)嚴(yán)重受到影響,這是因?yàn)檎麄€(gè)集合存儲(chǔ)意味著對整個(gè)嵌套對象進(jìn)行序列化。有鑒于此,建議單獨(dú)對每個(gè)元素進(jìn)行緩存,這樣就可以做到對每個(gè)對象分別更新和讀取,以減少序列化的影響。

6、對父子對象采取統(tǒng)一與單獨(dú)混用的存儲(chǔ)方式

有時(shí)候一個(gè)對象可能擁有兩個(gè)或更多的父對象,同一對象存儲(chǔ)在不同地方,這樣就會(huì)造成緩存的浪費(fèi)。為了不讓同一對象存儲(chǔ)于不同地方,這就需要根據(jù)統(tǒng)一對象本身的鍵進(jìn)行緩存,這樣父對象就能夠根據(jù)需要訪問子對象。

7、對配置信息進(jìn)行緩存

緩存數(shù)據(jù)的訪問是有代價(jià)的,所以要盡可能把影響減到最低,所以建議使用本地靜態(tài)變量代替緩存對配置數(shù)據(jù)進(jìn)行存儲(chǔ)。

8、對實(shí)時(shí)對象進(jìn)行緩存

如果對實(shí)時(shí)對象(例如:流、文件、注冊信息或者網(wǎng)絡(luò)情況)的引用進(jìn)行緩存的話,當(dāng)緩存數(shù)據(jù)被刪除后,之前緩存的實(shí)時(shí)對象不被刪除,這樣會(huì)造成系統(tǒng)資源泄漏,所以不要對實(shí)時(shí)對象進(jìn)行存儲(chǔ)。

9、使用多個(gè)鍵存儲(chǔ)同一對象

盡管使用多個(gè)鍵存儲(chǔ)同一對象就使得使用一個(gè)鍵和索引號來進(jìn)行訪問時(shí)帶來便利,但是當(dāng)緩存是基于遠(yuǎn)程緩存的話,任何關(guān)于對象改變都是不可見的,這樣會(huì)導(dǎo)致緩存數(shù)據(jù)同步問題的發(fā)生,所以不建議使用多個(gè)鍵存儲(chǔ)同一對象。

10、在連續(xù)存儲(chǔ)中進(jìn)行更新或刪除后不及時(shí)更新相應(yīng)緩存對象

由于在一個(gè)遠(yuǎn)程緩存中,數(shù)據(jù)以拷貝方式存儲(chǔ),所以當(dāng)更新對象時(shí),緩存不會(huì)被同步更新。所以更新對象時(shí),緩存必須被明確地進(jìn)行更新。然而在基于內(nèi)存的緩存中,當(dāng)刪除一個(gè)對象時(shí),在緩存中不會(huì)被同步刪除,所以建議通過程序確保緩存對象被正確刪除。

免責(zé)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),也不承認(rèn)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內(nèi)容,請發(fā)送郵件至:operations@xinnet.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

免費(fèi)咨詢獲取折扣

Loading
只有这里有精品视频| 插呦呦网站| 自慰在线一区二区三区| 夜夜添无码试看一区二区三区| 国产日韩欧美综合| 91蜜桃17| 国产精品妇女一二三区| 搜索免费在线观看毛片| 巨爆乳无码视频在线观看| 99xxav| 亚洲欧美日韩愉拍自拍美利坚| 亚洲综合123| 东京热无码人妻AV| 日本人妻伦奸| 月饼| 五月婷婷视频在线| 欧洲熟女一区二区| 国产精品久久久久亚洲av成人 | 免费在线成人网| 日韩精品国产精品| 亚洲激情欧美色| 欧美4色| 精品亚洲一区二区三区| 中文。日本。精品| 亚洲美女av噜噜噜| BBw色美色| 18成禁人视频免费网站| 五月丁香综合啪啪| 99天堂在线免费| www.字幕无码| 国产a级毛片| 国产精品色呦呦网站| 亚洲色道视频播| 成年无码Aⅴ片在线观看| 日韩无码高清免费视频| 在线夜色aⅴ| 欧美不卡一区二区三区| 黑人熟妇| 热一产久久久国| 91视频久久麻豆| 日本三级欧美三级中文字幕|