Redis提供了以下几种内存淘汰策略:
noeviction:这是Redis的默认配置,当缓存被写满时,再有写请求进来,Redis不再提供服务,直接返回错误。
volatile-random:缓存满了之后,在设置了过期时间的键值对中进行随机删除。
volatile-ttl:缓存满了之后,会针对设置了过期时间的键值对中,根据过期时间的先后顺序进行删除,越早过期的越先被删除。
volatile-lru:缓存满了之后,针对设置了过期时间的键值对,采用LRU算法进行淘汰。
volatile-lfu:缓存满了之后,针对设置了过期时间的键值对,采用LFU的算法进行淘汰。
allkeys-lru:针对所有key使用LRU算法进行淘汰。
allkeys-lfu:针对所有key使用LFU算法进行淘汰。
以上就是Redis的内存淘汰策略,不同的策略适用于不同的场景,需要根据实际需求进行选择。