Redis淘汰策略
引言:
今天去看redis存储的数据时看到以前存的key竟然还存在,当时不由得一阵不解,当初明明设置了过期时间,现如今这个key应该已经过期被删除了才对,但是竟然还存在,于是乎去看一下redis的淘汰策略。
六种淘汰策略
- noeviction(默认策略):对于写请求不再提供服务,直接返回错误(DEL请求和部分特殊请求除外)
- allkeys-lru:从所有key中使用LRU算法进行淘汰(LRU算法:即最近最少使用算法)
- volatile-lru:从设置了过期时间的key中使用LRU算法进行淘汰
- allkeys-random:从所有key中随机淘汰数据
- volatile-random:从设置了过期时间的key中随机淘汰
- volatile-ttl:在设置了过期时间的key中,淘汰过期时间剩余最短的
当使用volatile-lru、volatile-random、volatile-ttl这三种策略时,如果没有key可以被淘汰,则和noeviction一样返回错误
本文来自博客园,作者:爱吃糖的橘猫,转载请注明原文链接:https://www.cnblogs.com/sglblog/p/17167152.html