即使是';s已过期(但仍存在于Redis中)?
由于Redis以被动和主动方式对密钥进行过期 即使密钥的过期时间已过(但Redis中仍然存在),是否有办法获取密钥 没有。密钥(及其值)最终将自动过期,或者在尝试访问它(即被动或主动)时自动过期。将返回有关密钥的信息,即使该密钥在时间上过期——如果它尚未被垃圾收集(主动过期)或被动过期(访问) 要测试这一点,可以使用即使是';s已过期(但仍存在于Redis中)?,redis,Redis,由于Redis以被动和主动方式对密钥进行过期 即使密钥的过期时间已过(但Redis中仍然存在),是否有办法获取密钥 没有。密钥(及其值)最终将自动过期,或者在尝试访问它(即被动或主动)时自动过期。将返回有关密钥的信息,即使该密钥在时间上过期——如果它尚未被垃圾收集(主动过期)或被动过期(访问) 要测试这一点,可以使用DEBUG SET-active-EXPIRE 0禁用后台(活动)过期。小心使用。使用调试集-ACTIVE-EXPIRE 1进行还原 请注意,DEBUG OBJECT myKey返回
DEBUG SET-active-EXPIRE 0
禁用后台(活动)过期。小心使用。使用调试集-ACTIVE-EXPIRE 1进行还原
请注意,DEBUG OBJECT myKey
返回内存地址,因此如果您确实需要查看该值,则必须查看
DEBUG OBJECT myKey
返回(错误)如果该密钥已经过期,主动或被动地,或者如果它当然不存在,则不存在该密钥。您是指仅该密钥吗?还是价值呢?请参阅键和值。我查过了,很有趣,但不是我的意思。谢谢。似乎最好的正常方式是“阴影过期键”
> DEBUG OBJECT myKey
Value at:0x7fff70629920 refcount:1 encoding:embstr serializedlength:4 ...