Redis - 数据过期策略

Redis提供了两种数据过期策略 惰性删除定期删除

惰性删除

当某个key过期时,不马上删除,而是在调用时,再判断它是否过期,如果过期再删除它

优点 : 对CPU友好,对于很多用不到的key,不用浪费时间进行过期检查
缺点 : 对内存不友好,如果某个key过期了,但一直没使用,那么这个key就会一直留在内存中

定期删除

每隔一段时间,就对一定量的key进行检查,删除里面过期的key

注意: 每次只是检查一定量的key而不是全部key,随着时间的推移,才会遍历Redis中全部的key

定期删除有两种策略:

  • SLOW模式 : 定时任务,执行频率默认为10Hz,即每秒执行10次,可以通过 redis.conf 设置执行频率
  • FAST模式 :执行频率不固定,但两次间隔不低于2ms

*优点:*对内存友好

*缺点:*对CPU比较不友好,但是可以通过减少执行的频率来降低对CPU的影响

Redis的过期删除策略: 惰性删除 + 定期删除 两种策略配合使用

相关推荐
Elastic 中国社区官方博客2 小时前
Elasticsearch:使用 Agent Builder 的 A2A 实现 - 开发者的圣诞颂歌
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
2301_816660212 小时前
PHP怎么处理Eloquent Attribute Inference属性推断_Laravel从数据自动推导类型【操作】
jvm·数据库·python
qq_372154233 小时前
Go 中自定义类型与基础类型的显式转换规则详解
jvm·数据库·python
_下雨天.4 小时前
NoSQL之Redis配置与优化
数据库·redis·nosql
LiAo_1996_Y4 小时前
CSS如何实现文字渐变效果_通过background-clip实现艺术字
jvm·数据库·python
2401_887724504 小时前
CSS如何让表单在手机端友好展示_利用Flexbox实现堆叠排版
jvm·数据库·python
数据库小组4 小时前
MySQL 删库后怎么恢复?binlog2sql 之外,NineData 还能做什么
数据库·sql·mysql·安全·数据·ninedata·删库
zhangchaoxies4 小时前
Layui轮播图(carousel)怎么设置自动播放间隔
jvm·数据库·python
切糕师学AI5 小时前
HBase:一文搞懂分布式宽列数据库(原理 + 架构 + 实战)
数据库·分布式·nosql·hbase·分布式宽列数据库·wide column db
competes5 小时前
慈善基金投资底层逻辑应用 顶层代码低代码配置平台开发结构方式数据存储模块
java·开发语言·数据库·windows·sql