redis中的键值淘汰策略

马谦马谦马谦 2020年2月17日20:04:58 发表评论

当使用的内存到达上限后,redis提供了6种策略来淘汰键值:

策略 描述
volatile-lru 在所有设置了过期时间的键值中根据LRU算法淘汰最近最少使用的
allkeys-lru 对数据库中所有元素根据LRU算法淘汰最近最少使用的
volatile-random 从设置了过期时间的元素中随机淘汰
allkeys->random 数据库所有元素中随机淘汰
volatile-ttl 从设置了过期时间的键值中淘汰快要超时的
noeviction 不淘汰任何已有键值,直接给写操作返回错误

LRU是最近最少使用的,直译出来就是最久没有使用的。

redis默认的淘汰策略是volatile-lru,修改淘汰策略可以通过修改redis.conf文件中的maxmemory-policy字段,配置中关于各种淘汰策略也有详细的解释。使用grep volatile-lru redis.conf -A 6 -n可以过滤出这部分配置 :

redis中的键值淘汰策略

本文共执行62次查询,耗时0.602秒!
马谦马谦马谦

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: