Redis(五):关于过期键(1)过期键的设置、获取和删除过
发表于:2025-02-24 作者:千家信息网编辑
千家信息网最后更新 2025年02月24日,设置过期默认情况下键是没有生存时间的,也就是永不过期,除非清空内存。设置的键的生存时间也很容易,可以通过4个命令设置(任选一即可):EXPIRE、PEXPIRE、EXPIREAT、PEXPIREAT命
千家信息网最后更新 2025年02月24日Redis(五):关于过期键(1)过期键的设置、获取和删除过
设置过期
默认情况下键是没有生存时间的,也就是永不过期,除非清空内存。
设置的键的生存时间也很容易,可以通过4个命令设置(任选一即可):EXPIRE、PEXPIRE、EXPIREAT、PEXPIREAT命令,这4个命令看起来不同但是背后实现原理都是一样的。常用的其实就是EXPIRE和PEXPIRE这两个,前者是以秒设置过期时间,后者是以毫秒。
以秒来设置,设置aaa这个键1秒后过期,1秒中以后再获取aaa这个键则返回空。
以毫秒来设置,设置bbb这个键10毫秒后过期。
命令 | 说明 |
EXPIREkey #s | 将KEY的生存时间设置为#秒 |
PEXPIREkey #ms | 将KEY的生存时间设置为#毫秒 |
EXPIREATkey timestamp | 将KEY的生存时间设置为UNIX时间戳,单位为秒 |
PEXPIREATkey timestamp | 将KEY的生存时间设置为UNIX时间戳,单位为毫秒 |
上面这4个命令只是单位和表现形式上的不同,但实际上EXPIRE、PEXPIRE以及EXPIREAT命令的执行最后都会使用PEXPIREAT来实行。
比如使用EXPIRE来设置KEY的生存时间为N秒,那么后台是如何运行的呢:
它会调用PEXPIRE命令把N秒转换为M毫秒
然后获取当前的UNIX时间单位也是毫秒
把当前UNIX时间加上M毫秒传递给PEXPREAT
给键设置了过期时间,这个时间保存在一个字典里,也是键值结构,键是一个指针,指向真实的键,而值这是一个长整型的UNIX时间。
获取键的过期时间
如何查看一个键的生存时间多多少呢?可以使用ttl key来获取(以秒来显示),如下图:
另外还有一个命令是pttl key这个是以毫秒显示。
清除键的过期时间
可以使用PERSIST命令移除一个键的过期时间,如下图:
过期时间返回值的说明
通过ttl可以获取一个键的整数返回值
值 | 说明 |
-2 | 过期且已删除 |
-1 | 没有过期时间设置,即永不过期 |
>0 | 表示距离过期还有多少秒或者毫秒 |
时间
命令
单位
不同
永不
两个
也就是
内存
原理
只是
可以通过
后台
字典
实际
实际上
就是
常用
形式
情况
指向
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
软件开发中心是国企吗
政府单位网络安全测评
文件数据库性能对比
oa系统服务器地址
海淀区国家级网络安全产业园
零基础学管理软件开发
龙口微信小程序软件开发外包公司
网络安全密钥 是什么
dubbo 服务器
网络安全南洋股份
理科软件开发的学校
网络安全女生学起来难吗
网站服务器无缝切换
家里安装服务器可以吗
南通游戏软件开发定做价格
打印服务器怎么转公司
广东省软件开发技术人员参考工资
攻城掠地 服务器
关闭网络安全模式
录屏服务器
广州高性能服务器公司
服务器rss值是什么意思啊
mc建筑服务器
北京御猫网络技术有限公司
杭州银行子公司软件开发
分布式数据库一致性什么意思
机关网络安全意识不够
网络安全四个没有根本改变
文件上传路径存放数据库
摩尔庄园什么服务器可以一起玩