gpt4 book ai didi

redis - 使用 ttl 将值设置为键

转载 作者:IT王子 更新时间:2023-10-29 06:04:05 41 4
gpt4 key购买 nike

是否可以在redis的单个命令中设置一个带有值和ttl的键

我正在尝试在 Redis 和 http://redis.io/commands/hsetnx 中实现锁定似乎是最好的方法。它是原子的,如果键已经存在则返回 0。是否可以用TTL HSETNX

例如

HSETNX myhash mykey "myvalue" 10

#and key expires after 10 seconds, and a subsequent HSETNX after 10 seconds returns a value 1 i.e. it behaves as if mykey is not present in myhash

最佳答案

主要问题是 Redis 不支持 HashMap 中的字段过期。

您只能通过在 myhash 上调用 EXPIRE 来使整个 hashmap 过期。

因此,您应该重新考虑使用普通的 Redis 字符串而不是 HashMap ,因为它们支持 SETEX operation .

除非您想在您的散列映射 myhash< 上利用 HGETALLHKEYSHVALS,否则它会正常工作:

SETEX mynamespace:mykey 10 "myvalue"

mynamespace 在这里不是散列图,它只是一个前缀,但在大多数情况下,它的工作方式与散列图一样。唯一的区别是,没有有效的方法来判断哪些键存储在给定的 namespace 中或使用单个命令获取所有键。

关于redis - 使用 ttl 将值设置为键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19441723/

41 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com