Redis系列学习笔记9 键过期功能

键过期功能

让 Redis 在指定的时间自动删除特定的键。

键过期功能的相关命令

类型命令
设置生存时间EXPIRE 命令和 PEXPIRE 命令。
设置过期时间EXPIREAT 命令和 PEXPIREAT 命令。
查看剩余生存时间TTL 命令和 PTTL 命令。
删除生存时间或过期时间PERSIST 命令。

EXPIRE key seconds

将键 key 的生存时间设置为指定的秒数。

PEXPIRE key milliseconds

将键 key 的生存时间设置为指定的毫秒数。

如果给定的键不存在,那么 EXPIRE 和 PEXPIRE 将返回 0 ,表示设置失败;如果命令返回 1 ,那么表示设置成功。

EXPIREAT key timestamp

将键 key 的过期时间设置为指定的秒级 UNIX 时间戳。

PEXPIREAT key milliseconds-timestamp

将键 key 的过期时间设置为指定的毫秒级 UNIX 时间戳。

如果给定的键不存在,那么 EXPIREAT 和 PEXPIREAT 将返回 0 ,表示设置失败;如果命令返回 1 ,那么表示设置成功。

TTL key

以秒为单位,返回键的剩余生存时间。

PTTL key

以毫秒为单位,返回键的剩余生存时间。

TTL 和 PTTL 可能会返回三种不同的值:

返回值意义
-2键不存在。
-1键存在,但没有设置过期时间或者生存时间。
= 0
键的剩余生存时间。

PERSIST key

移除为键 key 设置的过期时间或生存时间,使得它不会被 Redis 自动删除。

键过期功能的应用

自动更新缓存、自动刷新排行榜、定时删除的用户 Session。

SETEX key seconds value

设置键key的值为value,seconds秒后过期

PSETEX key milliseconds value

设置键key的值为value,milliseconds毫秒后过期

尽管目前 SETEX 和 PSETEX 都能正常使用,但我个人还是建议尽量使用 SET 而不是 SETEX 或者PSETEX ,因为使用 SET 来设置生存时间更简洁一些,而比较旧的 SETEX 和 PSETEX 在将来可能会被废弃。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值