Redis的過期策略和記憶體淘汰策略

2021-10-10 04:49:52 字數 545 閱讀 1627

在redis中我們對於鍵可以通過expire key time設定生存時間,當time時間過後鍵就會過期,redis會採用過期策略對過期的鍵進行刪除。
過期策略主要是在cpu和記憶體之間進行權衡。可以將cpu的處理效率作為側重點進行選擇策略,也可以將記憶體的容量作為側重點進行選擇策略
實際上redis採用的過期策略為:過期刪除+惰性刪除。

由於過期刪除採用的隨機抽查,不可能將所有過期鍵找到並刪除,如果這時這些過期鍵也沒被惰性刪除檢查到就會導致記憶體越來越大,所以此時需要使用記憶體淘汰策略。

volatile-lru→使用lru演算法刪除帶有過期集的金鑰

allkeys-lru→根據lru演算法刪除任何金鑰

volatile-random→刪除帶有過期集的隨機鍵

allkeys-random→刪除乙個隨機的鍵,任何鍵

volatile-ttl→刪除最近過期時間的金鑰(較小的ttl)

noeviction→完全不過期,只是在寫操作時返回乙個錯誤

預設的是:noeviction

Redis的過期策略和記憶體淘汰策略

redis的過期策略 我們都知道,redis是key value資料庫,我們可以設定redis中快取的key的過期時間。redis的過期策略就是指當redis中快取的key過期了,redis如何處理。過期策略通常有以下三種 定時過期 每個設定過期時間的key都需要建立乙個定時器,到過期時間就會立即清...

Redis的過期策略和記憶體淘汰策略

我們都知道,redis是key value資料庫,我們可以設定redis中快取的key的過期時間。redis的過期策略就是指當redis中快取的key過期了,redis如何處理。過期策略通常有以下三種 redis中同時使用了惰性過期和定期過期兩種過期策略。redis的記憶體淘汰策略是指在redis的...

Redis的過期策略和記憶體淘汰策略

我們都知道,redis是key value資料庫,我們可以設定redis中快取的key的過期時間。redis的過期策略就是指當redis中快取的key過期了,redis如何處理。過期策略通常有以下三種 redis中同時使用了惰性過期和定期過期兩種過期策略。redis的記憶體淘汰策略是指在redis的...