Redis 過期策略 和 淘汰策略

2022-09-04 19:42:11 字數 481 閱讀 8346

適用於 很多的 key 可能會到了過期時間還沒有進行刪除的情況。

放任 key 過期不管,但是每次從鍵空間中獲取 key 時,都檢查取得的 key 是否過期,如果過期的話,就刪除該 key;如果沒有過期,就返回該 key 。

每隔一段時間程式就對資料庫進行一次檢查,刪除裡面的過期的 key 。至於要刪除多少過期的 key ,以及要檢查多少個資料庫,則由演算法決定。

使用策略規則:

當記憶體不足以容納新寫入資料時,在鍵空間中,移除最近最少使用的 key

當記憶體不足以容納新寫入資料時,在鍵空間中,隨機移除某個 key

當記憶體不足以容納新寫入資料時,在設定了過期時間的鍵空間中,移除最近最少使用的 key

當記憶體不足以容納新寫入資料時,在設定了過期時間的鍵空間中,有更早過期時間的 key 優先移除

當記憶體不足以容納新寫入資料時,在設定了過期時間的鍵空間中,隨機移除某個 key

當記憶體不足以容納新寫入資料時,新寫入操作會報錯

Redis的 過期策略 和 淘汰策略

惰性過期 被動淘汰 定期過期 redis 中同時使用了惰性過期和定期過期兩種過期策略 redis中定期過期策略演算法大致實現 redis.config中hz定義了servercron任務的執行週期,預設為10,即cpu空閒時每秒執行10次 每次過期key清理的時間不超過cpu時間的25 即若hz 1...

Redis的過期策略和淘汰策略

redis 過期策略都有哪些,有事怎樣刪除的 過期刪除策略 定時刪除 優點 對記憶體最友好的。可以及時釋放鍵所占用的記憶體。缺點 對 cpu 不友好。特別在過期鍵比較多的情況下,刪除過期鍵會占用相當一部分 cpu 時 間。同時在記憶體不緊張,cpu緊張的情況下,將 cpu 用在刪除和當前任務不想關的...

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

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