【Redis】Redis数据过期策略、数据淘汰策略

数据过期策略

首先,我们要知道Redis的数据过期策略是惰性删除和定期删除结合使用。

面试题:

惰性删除

定期删除

数据淘汰策略

Redis支持8种数据淘汰策略:
noeviction:不淘汰任何key,当内存满时,不写入任何新数据。默认采用这种方式
volatile-ttl:对设置了 ttl 的 key,比较 key 剩余的 ttl 的值,ttl 越小越先被淘汰
allkey-random:所有的 key 随机删除
volatile-random:对设置了 ttl 的 key 随机删除
allkey-lru:对所有的 key 采用LRU算法进行淘汰
volatile-lru:对设置了 ttl 的 key 采用LRU算法进行淘汰
allkey-lfu:对所有的 key 采用LFU算法进行淘汰
volatile-lru:对设置了 ttl 的 key 采用LFU算法进行淘汰

LRU:全称 Least Recently Used,即最近最少使用。当前时间减去最后一次访问时间,这个值越大,则被先淘汰。

例如:key1 是 3s 前访问,key2 是 9s 前访问,那么删除的是 key2
LFU:全称 Least Frequently Used,即最少频率使用。统计每个 key 访问频率,值越小被先淘汰

例如:key1 最近 5s 访问 4 次,key2 最近 5s 访问 9 次,那么删除 key1

面试题:

相关推荐
菜鸟plus+19 分钟前
N+1查询
java·服务器·数据库
子夜江寒21 分钟前
MySQL 表创建与数据导入导出
数据库·mysql
菜鸟小九39 分钟前
redis基础(安装配置redis)
数据库·redis·缓存
保定公民1 小时前
达梦数据库使用cp备份集恢复报错分析与解决
数据库
少废话h3 小时前
Redis主从与集群搭建全指南
大数据·linux·redis·mysql
中冕—霍格沃兹软件开发测试3 小时前
测试用例库建设与管理方案
数据库·人工智能·科技·开源·测试用例·bug
The star"'3 小时前
mysql(4-7)
数据库·mysql·adb
jiayong233 小时前
Redis面试深度解析
数据库·redis·面试
思成不止于此3 小时前
【MySQL 零基础入门】DQL 核心语法(四):执行顺序与综合实战 + DCL 预告篇
数据库·笔记·学习·mysql
weixin_462446234 小时前
SpringBoot切换Redis的DB
数据库·spring boot·redis