- 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(驅逐):禁止驅逐數據
1.LRUredis
在數據集中隨機挑選幾個鍵值對,取出其中 lru 最大的鍵值對淘汰。因此,你會發現,Redis 並非保證取得全部數據集中最近最少使用(LRU)的鍵值對,而只是隨機挑選的幾個鍵值對中的。dom
2.TTLserver
從過時時間 redisDB.expires 表中隨機挑選幾個鍵值對,取出其中 ttl 最大的鍵值對淘汰。一樣你會發現,Redis 並非保證取得全部過時時間的表中最快過時的鍵值對,而只是隨機挑選的幾個鍵值對中的。io