【问题标题】:Redis SET with option, without expiryRedis SET 带选项,没有过期
【发布时间】:2016-10-19 18:03:53
【问题描述】:

我正在编写一个将密钥存储在 Redis 或 Memcached 中的库。为了保持通用性,我想将SET 用于我的所有设置操作,但我正在努力寻找一个等同于“不会过期”的过期值。有我可以发送的哨兵值吗?

例如,如果到期时间为 100,我想发送:

SET myKey myValue ex 100 NX

但如果没有到期,我更愿意这样做

SET myKey myValue ex -1 NX

而不是

SETNX myKey myValue

有趣的是,似乎没有任何方法可以使用 XX 选项在不到期的情况下执行与 SET 等效的操作。

【问题讨论】:

    标签: redis


    【解决方案1】:

    只需发送设置命令 一个 EX 选项。

    Set key value NX 
    

    【讨论】:

    • 不知道 OP 是怎么漏掉的,它确实在文档中:redis.io/commands/SET
    • 很抱歉没有解释否决票。问题是如何设置 带有选项 但没有到期。 SET key value 将设置密钥,但不会对 XX/NX 进行任何控制。
    • @rossmcf 添加了 NX 作为文档列表。 EX 或 PX 选项的使用独立于 NX 或 XX 的任何使用。
    • @TheRealBill 谢谢,我会检查一下。我看到的可能是我正在使用的客户端库 Predis 的限制。
    • 哈扎!谢谢@TheRealBill!
    猜你喜欢
    • 1970-01-01
    • 2019-10-24
    • 2018-06-11
    • 2012-05-26
    • 2020-07-22
    • 2020-04-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多