lru(least recently used, 最近很少使用)
思想: 越最近使用過的資料,接下來使用的機會越大,越應該保留,剔除哪些很久之前使用過的資料
新資料插入到列表頭部;
每當快取命中(即快取資料被訪問),則將資料移到列表頭部;
當列表滿的時候,將列表尾部的資料丟棄。
lfu(least frequently used 最近頻繁使用演算法)
思想:使用的次數越高(頻率),接下來使用的機會就越高,越應該保留.剔除哪些使用次數少的
redis 4.x後支援lfu策略,最少頻率使用
可以通過redis的配置檔案來控制
結論:
redis 記憶體淘汰策略配置
在配置檔案有一行 maxmemory policy volatile lru 對應的策略 noeviction 當記憶體使用達到閾值的時候,所有引起申請記憶體的命令會報錯。volatile lru 在設定了過期時間的鍵空間中,優先移除最近未使用的key。allkeys random 在主鍵空間中,隨...
Redis 記憶體資料淘汰策略
no eviction 預設策略。禁止驅逐,保證資料不會丟失 allkeys lru 針對所有key,優先刪除最近最少使用 less recently used 的key volatile lru 針對設定了過期時間的key,優先刪除最近最少使用 less recently used 的key al...
Redis的記憶體淘汰策略
記憶體淘汰策略分類 早期版本的 redis 有以下 6 種淘汰策略 noeviction 不淘汰任何資料,當記憶體不足時,新增操作會報錯,redis 預設記憶體淘汰策略 allkeys lru 淘汰整個鍵值中最久未使用的鍵值 allkeys random 隨機淘汰任意鍵值 volatile lru ...