Redis TTL命令用于获取或设置key的过期时间,TTL的全称为Time To Live,通俗地说就是key的存活时间。
命令格式
TTL key
返回值
如果key存在,则返回key的剩余过期时间(以秒为单位),如果key不存在,则返回-2,如果key存在但没有设置过期时间,则返回-1。
使用方法
设置过期时间
可以通过Redis的expire命令设置key的过期时间:
# 设置key为value,并设置过期时间为10秒
SET key value
EXPIRE key 10
获取过期时间
# 获取过期时间
TTL key
删除过期键
# 删除过期键
DEL key
实例说明
实例一
假设我们需要一个存储验证码的Redis键值对,这个验证码需要在10分钟内过期:
# 存储验证码
SET code 123456
# 设置过期时间为600秒(10分钟)
EXPIRE code 600
可以通过TTL命令查看键值对的剩余生存时间:
# 获取过期时间,返回值为剩余秒数
TTL code
如果返回的是-1,则表示键值对没有设置过期时间,如果返回的是-2,则表示键值对不存在。
实例二
假设我们需要记录一个用户的登录次数,但是我们只需要记录最近一小时的登录次数,那么可以利用Redis的过期时间来处理:
# 每次登录+1
INCR login_count
# 设置过期时间为1小时
EXPIRE login_count 3600
这样就可以保证每个键值对只记录最近一小时的登录次数。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Redis TTL命令 - Python技术站