在 Redis 中,可以为键设置一个过期时间(TTL,Time to Live),使得键在指定的时间之后自动被删除。这在缓存数据时特别有用,因为你可以让老旧的数据自动过期,从而释放内存。
有两种主要方式来设置键的过期时间:
使用 EXPIRE 命令
EXPIRE 命令可以为键设置一个过期时间,单位为秒。例如,如果你想让键 "my_key" 在 60 秒后过期,可以使用以下命令:
1EXPIRE my_key 60
使用 PEXPIRE 命令
如果你需要设置一个更精确的过期时间,可以使用 PEXPIRE 命令,这个命令的过期时间单位为毫秒。例如,设置键 "my_key" 在 10000 毫秒(即 10 秒)后过期:
1PEXPIRE my_key 10000
设置带有过期时间的值
除了上面的命令外,你还可以在设置键的值的同时直接指定过期时间,使用 SETEX 或 PSETEX 命令。
例如,使用 SETEX 将 "my_key" 设置为 "my_value",并在 60 秒后过期:
1SETEX my_key 60 my_value
或者使用 PSETEX 指定毫秒为单位的过期时间:
1PSETEX my_key 10000 my_value
检查键的剩余过期时间
要检查一个键的剩余过期时间,可以使用 TTL 命令(单位为秒)或 PTTL 命令(单位为毫秒)。如果键没有设置过期时间,TTL 命令将返回 -1,如果键不存在,则返回 -2。
1TTL my_key
或者:
1PTTL my_key
移除过期时间
如果你想移除一个键的过期时间,使其永久存储,可以使用 PERSIST 命令:
1PERSIST my_key
本文详细介绍了如何在Redis中使用EXPIRE、PEXPIRE、SETEX和PSETEX命令为键设置过期时间,以及如何检查和移除过期时间。这对于缓存管理和内存优化至关重要。
9946

被折叠的 条评论
为什么被折叠?



