2017-06-14 39 views

回答

0

过期精度为毫秒(使用SET KEY VALUE PX millPEXPIRE mill)。所以,最短过期时间是1毫秒。

最大过期时间是无限的,即如果您没有设置任何过期时间,该密钥永不过期。

0

有4个指令来做出Redis的许可证过期:

  • EXPIRE(时间几秒钟过去了)

设置关键超时。超时过期后,将自动删除密钥 。

实施例:

redis> SET mykey "Hello" 
"OK" 
redis> EXPIRE mykey 10 
(integer) 1 
redis> TTL mykey 
(integer) 10 
redis> SET mykey "Hello World" 
"OK" 
redis> TTL mykey 
(integer) -1 
redis> 
  • EXPIREAT(时间的流逝如Unix时间戳)

EXPIREAT具有相同的效果和语义作为到期,但代替 指定的秒数代表TTL(生存时间), 它需要绝对的Unix时间戳(1970年1月1日以来的秒数)。过去的 时间戳会立即删除密钥。

例子:

redis> SET mykey "Hello" 
"OK" 
redis> EXISTS mykey 
(integer) 1 
redis> EXPIREAT mykey 1293840000 
(integer) 1 
redis> EXISTS mykey 
(integer) 0 
  • PEXPIRE(时间以毫秒为单位通过)

这个命令的作用完全一样届满,但住在关键的时间以毫秒为单位,而不是秒。

实施例:

redis> SET mykey "Hello" 
"OK" 
redis> PEXPIRE mykey 1500 
(integer) 1 
redis> TTL mykey 
(integer) 1 
redis> PTTL mykey 
(integer) 1498 
  • PEXPIREAT(时间以毫秒为单位的TimeStamp通过)

PEXPIREAT具有相同的效果和语义作为EXPIREAT,但Unix时间处的关键将过期以毫秒而不是秒来指定。

redis> SET mykey "Hello" 
"OK" 
redis> PEXPIREAT mykey 1555555555005 
(integer) 1 
redis> TTL mykey 
(integer) 58130168 
redis> PTTL mykey 
(integer) 58130167824