華為云Redis默認(rèn)的數(shù)據(jù)逐出策略是什么?
我來答

華為云Redis默認(rèn)的數(shù)據(jù)逐出策略是什么?

何瑤 2021-05-10 提問
176

如題,華為云Redis默認(rèn)的數(shù)據(jù)逐出策略是什么?

關(guān)閉
提交回答
1 個(gè)回答
我來答
楊浦尚

逐出指將數(shù)據(jù)從緩存中刪除,以騰出更多的存儲(chǔ)空間容納新的緩存數(shù)據(jù)。當(dāng)前版本支持在配置運(yùn)行參數(shù)中修改逐出策略。

Redis實(shí)例支持在配置運(yùn)行參數(shù)中修改數(shù)據(jù)逐出策略。

在達(dá)到內(nèi)存上限(maxmemory)時(shí)Redis支持選擇以下6種數(shù)據(jù)逐出策略:

  • noeviction:在這種策略下,如果緩存達(dá)到了配置的上限,實(shí)例將不再處理客戶端任何增加緩存數(shù)據(jù)的請(qǐng)求,比如寫命令,實(shí)例直接返回錯(cuò)誤給客戶端。緩存達(dá)到上限后,實(shí)例只處理刪除和少數(shù)幾個(gè)例外請(qǐng)求。

  • allkeys-lru:根據(jù)LRU(Least recently used,最近最少使用)算法嘗試回收最少使用的鍵,使得新添加的數(shù)據(jù)有空間存放。

  • volatile-lru:根據(jù)LRU(Least recently used,最近最少使用)算法嘗試回收最少使用的鍵,但僅限于在過期集合的鍵,使得新添加的數(shù)據(jù)有空間存放。

  • allkeys-random:回收隨機(jī)的鍵使得新添加的數(shù)據(jù)有空間存放。

  • volatile-random:回收隨機(jī)的鍵使得新添加的數(shù)據(jù)有空間存放,但僅限于在過期集合的鍵。

  • volatile-ttl:回收在過期集合的鍵,并且優(yōu)先回收存活時(shí)間(TTL)較短的鍵,使得新添加的數(shù)據(jù)有空間存放。

說明:

  • 當(dāng)沒有鍵滿足回收前提條件時(shí),數(shù)據(jù)逐出策略volatile-lru、volatile-random、volatile-ttl與noeviction策略相同,具體見上文noeviction介紹。

回答于 2021-05-10
贊同
評(píng)論
掃碼關(guān)注
獲取更多出海問答的相關(guān)信息
小程序
快出海小程序
公眾號(hào)
快出海公眾號(hào)
商務(wù)合作
商務(wù)合作
投稿采訪
投稿采訪
出海管家
出海管家