redis資料淘汰機制

2021-07-29 20:04:45 字數 691 閱讀 7800

在redis中,redis允許使用者更改設定最大記憶體maxmemory,在每次寫入或更新等操作時候,redis會檢查使用的記憶體,當記憶體達到最大值得時候,就會進行資料淘汰策略,從而換取記憶體出來

redis資料淘汰策略有6種:

volatile-lru:從已設定過期時間的資料集(server.db[i].expires)中挑選最近最少使用的資料淘汰

volatile-ttl:從已設定過期時間的資料集(server.db[i].expires)中挑選將要過期的資料淘汰

volatile-random:從已設定過期時間的資料集(server.db[i].expires)中任意選擇資料淘汰

allkeys-lru:從資料集(server.db[i].dict)中挑選最近最少使用的資料淘汰

allkeys-random:從資料集(server.db[i].dict)中任意選擇資料淘汰

no-enviction(驅逐):禁止驅逐資料

redis 確定驅逐某個鍵值對後,會刪除這個資料並,並將這個資料變更訊息發布到本地(aof 持久化)和從機(主從連線)。

如果設定了過期時間,在達到記憶體最大的時候,建議可以使用第一種volatile-lru淘汰策略

如果沒有設定過期時間,在達到記憶體最大時候,建議使用allkeys-lru淘汰策略

使用的2種演算法:   這個部落格感覺不錯,對於我們這些新手理解起來可能比較容易!

redis資料淘汰機制

redis資料淘汰機制 概述 在 redis 中,允許使用者設定最大使用記憶體大小 server.maxmemory,在記憶體限定的情況下是很有用的。譬如,在一台 8g 機子上部署了 4 個 redis 服務點,每乙個服務點分配 1g 的記憶體大小,減少記憶體緊張的情況,由此獲取更為穩健的服務。re...

Redis 資料淘汰機制

為了更好的利用記憶體,使redis儲存的都是快取的熱點資料,redis設計了相應的記憶體淘汰機制 也叫做快取淘汰機制 通過maxmemory 配置項來設定允許使用者使用的最大記憶體大小,當記憶體資料集大小達到一定的大小時,就會根據maxmemory policy noeviction配置項配置的策略...

Redis 資料淘汰機制

為了更好的利用記憶體,使redis儲存的都是快取的熱點資料,redis設計了相應的記憶體淘汰機制 也叫做快取淘汰機制 通過maxmemory 配置項來設定允許使用者使用的最大記憶體大小,當記憶體資料集大小達到一定的大小時,就會根據maxmemory policy noeviction配置項配置的策略...