redis的淘汰策略:主要是针对redis内存满了之后做的一个处理,redis的淘汰策略算法有两种,分别是LRU算法和LFU算法,淘汰策略有8种
一、两种算法:
LRU算法:指的是很最久没有使用的key清理掉,以时间间隔来做判断
LFU算法:指的是使用次数最少的key清理掉,以使用次数来判断
二、八种策略
-
noeviction:只返回错误,不会删除任何key。该策略是Redis的默认淘汰策略,一般不会选用。
-
volatile-ttl:将设置了过期时间的key中即将过期(剩余存活时间最短)的key删除掉。
-
volatile-random:在设置了过期时间的key中,随机删除某个key。
-
allkeys-random:从所有key中随机删除某个key。
-
volatile-lru:基于LRU算法,从设置了过期时间的key中,删除掉最近最少使用的key。
-
allkeys-lru:基于LRU算法,从所有key中,删除掉最近最少使用的key。该策略是最常使用的策略。
-
volatile-lfu:基于LFU算法,从设置了过期时间的key中,删除掉最不经常使用(使用次数最少)的key。
-
allkeys-lfu:基于LFU算法,从所有key中,删除掉最不经常使用(使用次数最少)的key。