Redis设置生存时间或过期时间的相关命令

一.前言 

  本文简单地记录一下Redis中设置key的生存时间或过期时间的方式。

二.设置key的生存时间

  通过EXPIRE命令和PEXPIRE命令,可以给key设置生存时间(Time To Live,TTL),EXPIRE设置的时间单位为秒,PEXPIRE设置的时间单位为毫秒,在经过指定的生存时间后,Redis服务器会自动删除生存时间为0的key。

//命令

//给指定key设置生存时间(单位秒)
EXPIRE key seconds

//给指定key设置生存时间(单位毫秒)
PEXPIRE key milliseconds

三.设置key的过期时间

  通过EXPIREAR命令和PEXPIREAT命令,可以给key设置过期时间(expire time),这个过期时间是一个UNIX时间戳,EXPIREAT设置的时间戳单位是秒,PEXPIREAT设置的时间戳单位是毫秒。当key的过期时间来临时,Redis服务器会自动删除这个过期的key。

复制代码
//命令

//给指定key设置生存时间(单位秒)
EXPIRE key seconds

//给指定key设置生存时间(单位毫秒)
PEXPIRE key milliseconds

//查看当前服务器的时间 返回两个值,一是当前时间(UNIX时间戳格式),二是这一秒已经逝去的微秒数
TIME
复制代码

四.获取key的剩余生存时间

  TTL命令和PTTL命令接受一个带有生存时间或者过期时间的key,返回这个key的剩余生存时间。TTL获取的时间单位是秒,PTTL获取的时间单位是毫秒。如果命令接受的key是没有设置生存时间或过期时间,那么返回-1。 

//命令

//获取key剩余的生存时间(单位秒)
TTL key

//获取key剩余的生存时间(单位毫秒)
PTTL key

五.移除key的过期时间(生存时间)

  设置生存时间的EXPIRE命令和PEXPIRE命令在客户端中最终也是转换为PEXPIREAT命令来实现,也就是都是给key设置过期时间。移除key的过期时间和生存时间都是同样的使用PERSIST命令来实现。

//命令

//删除key的过期时间(生存时间)
PERSIST key

六.总结

  1.可以给key设置一个时间,等过了这个时间就自动把key删除。使用命令:EXPIRE、PEXPIRE、EXPIREAT、PEXPIREAT。

  2.可以查看key的剩余生存时间。使用命令:TTL、PTTL。

  3.可以移除key的过期时间。使用命令:PERSIST。

 

posted @   shine声  阅读(3626)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示