無(wú)論是哪一層次的緩存都面臨一個(gè)同樣的問(wèn)題:當(dāng)容量有限的緩存的空閑空間全部用完后,又有新的內(nèi)容需要添加進(jìn)緩存時(shí),如何挑選并舍棄原有的部分內(nèi)容,從而騰出空間放入這些新的內(nèi)容。解決這個(gè)問(wèn)題的算法有幾種,如最近使用算法(LRU)、先進(jìn)先出算法(FIFO)、最近最少使用算法(LFU)、非最近使用算法(NMRU)等,這些算法在不同層次的緩存上執(zhí)行時(shí)擁有不同的效率和代價(jià),需根據(jù)具體場(chǎng)合選擇最合適的一種。
最近使用算法, 顧名思義,可以將其理解為如果數(shù)據(jù)最近被訪(fǎng)問(wèn)過(guò),那么將來(lái)被訪(fǎng)問(wèn)的幾率也很高。它的實(shí)現(xiàn)有多種方式,比如LRU、LRU-K、Two queues、Mutiple queues等。
LRU
LRU-K
Two queues
Mutiple queues
LRU 延伸閱讀 ssh框架 2016-09-30 阿里移動(dòng)安全 [無(wú)線(xiàn)安全]玩轉(zhuǎn)無(wú)線(xiàn)電——不安全的藍(lán)牙鎖 2017-07-26 消息隊(duì)列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26 Selective Search for Object Recognition 論文筆記【圖片目標(biāo)分割】 2017-07-26 詞向量-LRWE模型-更好地識(shí)別反義詞同義詞 2017-07-26 從棧不平衡問(wèn)題 理解 calling convention 2017-07-26 php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26 Swift實(shí)現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26 阿里移動(dòng)安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來(lái)看看(二) 2017-07-26 學(xué)習(xí)是年輕人改變自己的最好方式