Redis(五):关于过期键(2)过期键的删除
发表于:2025-11-12 作者:千家信息网编辑
千家信息网最后更新 2025年11月12日,键虽然被设置了过期时间,但是当过期以后是如何处理的呢?通常有三种规则:定时删除:在设置了键的过期时间后,会启动一个计时器,当键的计时器到期就删除该键。惰性删除:不创建计时器,过期也不做处理,当再次读取
千家信息网最后更新 2025年11月12日Redis(五):关于过期键(2)过期键的删除
键虽然被设置了过期时间,但是当过期以后是如何处理的呢?通常有三种规则:
定时删除:在设置了键的过期时间后,会启动一个计时器,当键的计时器到期就删除该键。
惰性删除:不创建计时器,过期也不做处理,当再次读取该键的时候先去去判断是否过期,如果过期就删除并返回空,如果没有过期就返回值。
定期删除:这个很好理解,过一段时间清理一次,至于是否全部清除不一定,因为如果键过多,整体清理肯定会消耗大量的CPU时间,所以定期清除可能是定期清除一部分,然后在一个整体的定期清除周期里完成整体清除。
| 策略 | 优点 | 缺点 |
| 定时删除 | 对于内存空间来讲最有效,不存储任何过期数据 | 频繁的删除过期数据会占用较多的CPU时间 |
| 惰性删除 | 不占用过多的CPU时间 | 数据库会存在大量过期数据,占用内存空间 |
| 定期删除 | 吸取定时和惰性删除的优点 | 要设计一个好的删除操作占用时长和执行频率 |
Redis所使用的就是惰性删除和定期删除两种策略。也就是说它会定期执行删除过期键的操作,但是又不是一次遍历所有键,而是定期遍历一部分,在一个长周期内达到遍历所有。在还没有到达定期删除的时间段内,使用惰性删除,遇到过期的就删除,没有遇到的则保留,留给定期删除处理。通过这种机制就在内存和CPU之间寻求了一种平衡。
定期删除操作的周期是默认100毫秒,这个是由serverCron周期操作函数来执行的。但是每次删除操作执行多长时间已经以及遍历多少数据库这个是由具体算法来决定的。
时间
惰性
数据
周期
内存
整体
计时器
优点
数据库
是由
空间
策略
过多
处理
有效
频繁
之间
也就是
也就是说
再次
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
召开网络安全主题班会总结
安全模式重构数据库
mysql存储图片数据库
工业网络安全法
将数据导入数据库
远程无法访问服务器管理端口
mha切换数据库
网络安全标语毛笔
tbc转错服务器
数据库技术部
数据库语法代码
深圳酷比 软件开发
中兴通讯的软件开发能做到多少岁
我们说的网络安全是什么
保定艾力艾互联网科技有限公司
客户机服务器网
数字媒体电子通信网络技术
南京多功能软件开发特点
服务器和笔记本的芯片
火币天下网络技术
中小学学生网络安全公约
达梦数据库集群架构图
计算机网络技术和计算机应用技术有什么区别
东城区大规模软件开发设计
守护网络安全的句子
csgo新号一直和服务器断开
静安区现代化网络技术品牌
腾科杯数据库比赛
未转变者多人服务器解说
软件开发培训流程