什么是 KEEPTTL 和 XX 的 Redis 选项对象键标题(如果存在,则更新)?



我已经将Redis版本更新为"4.2.0";在Node中,我必须转换旧的client.set方法以使用options对象,而不是逗号分隔的选项。

我能够通过设置一个值来做到这一点,因为文档中说过期的关键标题是";EX";喜欢

const setValue = async (key, value, exp) => {
   await client.set(key, JSON.stringify(value), { EX: exp }) 
}

但是"选项"的选项对象关键字标题是什么;KEETTL""XX";(如有更新(???请参阅下面的问号。。。

const updateValue = async (key, value) => {
   await client.set(key, JSON.stringify(value), { <?>: "KEEPTTL", <?>: "XX" })
}

XX表示只设置密钥,如果密钥已经存在,即不添加新密钥。

KEEPTTL是Redis6.0的一个新选项。默认情况下,当您在密钥上调用set key value时,过期时间(TTL(将被重置,即不再有TTL。但是,使用此选项,您只能更改值,而无需修改TTL。

相关内容

最新更新