redis是固定的存储空间 通过 CONFIG SET maxmemory 4gb 命令来设置大小(此处设为4gb)
那么当4gb存储满的时候就需要考虑清除一些无用或过期数据释放空间

redis的过期清除策略:
1、定期清除:定期清除是指 redis会定期随机挑选一些key,检查其是否过期,如果过期,则清除。
2、惰性删除:在用户要查看key时,redis会检查一下这个key是否过期,如果过期,则清除。这样的话,则存在一种情况,就是缓存既没有被用户使用,也没有被随机挑选到,那么这样的缓存就会一直堆积在内存中无法被清除(此时应考虑缓存淘汰策略)。

redis的缓存淘汰策略:
noeviction 不进行缓存淘汰,存满以后拒绝继续存。
volatile-ttl 在即将过期的键值对中,移除即将过期的键值对
volatile-random 在即将过期的键值对,随机移除键值对
volatile-lru:在设置了过期时间的键值对中,移除最近最少使用的键值对
volatile-lfu:在设置了过期时间的键值对中,移除最近最不频繁使用的键值对
allkeys-random:在所有键值对中,随机移除某个key
allkeys-lru:在所有的键值对中,移除最近最少使用的键值对
allkeys-lfu:在所有的键值对中,移除最近最不频繁使用的键值对

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐