首頁技術(shù)文章正文

redis緩存淘汰策略有哪些?

更新時(shí)間:2022-08-01 來源:黑馬程序員 瀏覽量:

IT培訓(xùn)班

1、Redis內(nèi)存不足的緩存淘汰策略提供了8種。

noeviction:當(dāng)內(nèi)存使用超過配置的時(shí)候會返回錯(cuò)誤,不會驅(qū)逐任何鍵。

allkeys-lru:加入鍵的時(shí)候,如果過限,首先通過LRU算法驅(qū)逐最久沒有使用的鍵。

volatile-lru:加入鍵的時(shí)候如果過限,首先從設(shè)置了過期時(shí)間的鍵集合中驅(qū)逐最久沒有使用的鍵。

allkeys-random:加入鍵的時(shí)候如果過限,從所有key隨機(jī)刪除。

volatile-random:加入鍵的時(shí)候如果過限,從過期鍵的集合中隨機(jī)驅(qū)逐。

volatile-ttl:從配置了過期時(shí)間的鍵中驅(qū)逐馬上就要過期的鍵。

volatile-lfu:從所有配置了過期時(shí)間的鍵中驅(qū)逐使用頻率最少的鍵。

allkeys-lfu:從所有鍵中驅(qū)逐使用頻率最少的鍵。

2、這八種大體上可以分為4中,lru、lfu、random、ttl。

lru:Least Recently Used),最近最少使用。

lfu:Least Frequently Used,最不經(jīng)常使用法。

ttl:Time To Live,生存時(shí)間。

random:隨機(jī)。

3、默認(rèn)是noeviction。對于寫請求不再提供服務(wù),直接返回錯(cuò)誤(DEL請求和部分特殊請求除外。

4、eviction:“逐出;趕出;收回”。

5、volatile:“不穩(wěn)定的”。

分享到:
在線咨詢 我要報(bào)名
和我們在線交談!