redis中的键值淘汰策略
当使用的内存到达上限后,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可以过滤出这部分配置 :

评论已关闭