即使我设置了Redis Key,我如何保持Redis Key的到期?

时间:2011-08-04 02:26:01

标签: database redis

设置100 EXPIRE a 86400

好的,现在,“a”将在一天内到期。我想要SET“a”到其他值,但我仍然希望它根据我创建的初始“EXPIRE”到期。

换句话说,当我将“a”设置为新内容时,请不要删除EXPIRE。

3 个答案:

答案 0 :(得分:2)

如果您是从命令行执行此操作,则无法准确执行此操作。您可以做的最好的事情是手动将新密钥的过期时间设置为a剩余的TTL(TTL a)。

如果您正在通过某个程序与Redis进行通信,则可以获取a的到期时间,并将该值设置为新密钥的到期时间,以便更加准确。

答案 1 :(得分:1)

尝试 setex bcz更快更好原子

答案 2 :(得分:0)

这是我requested 2 years ago的一部分,现在已添加(https://github.com/antirez/redis/pull/6679)。

SET foo 1 KEEPTTL

这将在下一个发行版中引入。