更新時間:2022-08-01 來源:黑馬程序員 瀏覽量:
1、Redis內(nèi)存不足的緩存淘汰策略提供了8種。
noeviction:當內(nèi)存使用超過配置的時候會返回錯誤,不會驅逐任何鍵。
allkeys-lru:加入鍵的時候,如果過限,首先通過LRU算法驅逐最久沒有使用的鍵。
volatile-lru:加入鍵的時候如果過限,首先從設置了過期時間的鍵集合中驅逐最久沒有使用的鍵。
allkeys-random:加入鍵的時候如果過限,從所有key隨機刪除。
volatile-random:加入鍵的時候如果過限,從過期鍵的集合中隨機驅逐。
volatile-ttl:從配置了過期時間的鍵中驅逐馬上就要過期的鍵。
volatile-lfu:從所有配置了過期時間的鍵中驅逐使用頻率最少的鍵。
allkeys-lfu:從所有鍵中驅逐使用頻率最少的鍵。
2、這八種大體上可以分為4中,lru、lfu、random、ttl。
lru:Least Recently Used),最近最少使用。
lfu:Least Frequently Used,最不經(jīng)常使用法。
ttl:Time To Live,生存時間。
random:隨機。
3、默認是noeviction。對于寫請求不再提供服務,直接返回錯誤(DEL請求和部分特殊請求除外。
4、eviction:“逐出;趕出;收回”。
5、volatile:“不穩(wěn)定的”。