沃梦达 / IT编程 / 数据库 / 正文

Redis TTL命令

Redis TTL命令用于获取或设置key的过期时间,TTL的全称为Time To Live,通俗地说就是key的存活时间。

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命令