PassJava (佳必过) 项目全套学习教程连载中,关注公众号悟空聊架构第一时间获取。
文档在线地址: www.passjava.cn
Redis的淘汰策略有哪几种?
悟空拧螺丝 2021-07-19
Redis的淘汰策略有哪几种?
源码在这里:redis.conf 文件

volatile-ttl 策略,在筛选时,会针对设置了过期时间的键值对,根据过期时间的先后进行删除,越早过期的越先被删除。
volatile-random策略,在设置了过期时间的键值对中,进行随机删除。
volatile-lru 策略,会使用 LRU 算法筛选设置了过期时间的键值对。最近最少使用的会被删掉。
volatile-lfu 会使用 LFU 算法选择设置了过期时间的键值对。首先会筛选并淘汰访问次数少的数据,然后针对访问次数相同的数据,再筛选并淘汰访问时间最久远的数据。
allkeys-random 策略,从所有键值对中随机选择并删除数据。
allkeys-lru 策略,使用 LRU 算法在所有数据中进行筛选。
allkeys-lfu 策略,使用 LFU 算法在所有数据中进行筛选。
默认情况下,Redis 在使用的内存空间超过 maxmemory 值时,并不会淘汰数据,也就是设定的 noeviction 策略。写满后再写会返回错误。

作者简介:悟空,8年一线互联网开发和架构经验,用故事讲解分布式、架构设计、Java 核心技术。《JVM性能优化实战》专栏作者,开源了《Spring Cloud 实战 PassJava》项目,公众号:
悟空聊架构。
悟空的开源项目
https:///Jackson0714/PassJava-Platform
















