redis hash结构如何设置过时时间

Redis中有个设置时间过时的功能,即经过setex或者expire实现,目前redis没有提供hsetex()这样的方法,redis中过时时间只针对顶级key类型,对于hash类型是不支持的,这个时候,咱们能够采用,因此若是想对hash进行expires设置,能够采用下面的方法:redis

redis 127.0.0.1:6379> hset expire:me name tom
(integer) 0
redis 127.0.0.1:6379> hget expire:me name
"tom"

redis 127.0.0.1:6379> expire expire:me 20
(integer) 1
redis 127.0.0.1:6379> ttl expire:me
(integer) 8

...
...
...

redis 127.0.0.1:6379> ttl expire:me
(integer) -1
redis 127.0.0.1:6379> hget expire:me name
(nil)
即对存储在redis数据库中的值能够设置一个过时时间。做为一个缓存数据库,这是很是实用的。如咱们通常项目中的token或者一些登陆信息,尤为是短信验证码都是有时间限制的,按照传统的数据库处理方式,通常都是本身判断过时,这样无疑会严重影响项目性能。数据库

相关文章
相关标签/搜索