Redis 内存淘汰机制

Redis内存淘汰指的是用户存储的一些键被可以被Redis主动地从实例中删除,
Redis最常见的两种应用场景为缓存和持久存储
内存的淘汰机制的初衷是为了更好地使用内存,用一定的缓存miss来换取内存的使用效率。
通过配置redis.conf中的maxmemory这个值来开启内存淘汰功能
maxmemory为0的时候表示我们对Redis的内存使用没有限制。

maxmemory  3221225472
默认的策略为noeviction策略:
maxmemory-policy noeviction

Redis提供了几种淘汰策略供用户选择,
noeviction                 当内存使用达到阈值的时候,所有引起申请内存的命令会报错。
allkeys-lru                在主键空间中,优先移除最近未使用的key。
volatile-lru               在设置了过期时间的键空间中,优先移除最近未使用的key。
allkeys-random             在主键空间中,随机移除某个key。
volatile-random            在设置了过期时间的键空间中,随机移除某个key。
volatile-ttl               在设置了过期时间的键空间中,具有更早过期时间的key优先移除。

相关推荐