Rails Redis 将计数器重置为 0
Rails Redis Reset Counters to 0
我想在 Rails 4 应用程序中将 REDIS 计数器的值重置为 0。
我使用 hincrby 来递增计数器
$redis.hincrby("user:likes", "key", 1)
我不能用hdel删除密钥http://redis.io/commands/hdel因为我需要经常获取密钥
GETSET 是原子的,可以完成 http://redis.io/commands/getset 的工作,如示例
GETSET mycounter "0"
但是因为我使用哈希,所以我需要使用 HSET http://redis.io/commands/hset
$redis.hset("user:likes", "key", "0")
没有指定hset是否是原子的,有人用hset将redis计数器重置为0吗?如果将计数器重置为 0 不是一个好的选择,知道该怎么做吗?
它是原子的,所以如果你 运行 $redis.hset("user:likes", "key", "0")
,它不会影响 "user:likes" 散列中除字段之外的其他字段:"key"
我想在 Rails 4 应用程序中将 REDIS 计数器的值重置为 0。
我使用 hincrby 来递增计数器
$redis.hincrby("user:likes", "key", 1)
我不能用hdel删除密钥http://redis.io/commands/hdel因为我需要经常获取密钥
GETSET 是原子的,可以完成 http://redis.io/commands/getset 的工作,如示例
GETSET mycounter "0"
但是因为我使用哈希,所以我需要使用 HSET http://redis.io/commands/hset
$redis.hset("user:likes", "key", "0")
没有指定hset是否是原子的,有人用hset将redis计数器重置为0吗?如果将计数器重置为 0 不是一个好的选择,知道该怎么做吗?
它是原子的,所以如果你 运行 $redis.hset("user:likes", "key", "0")
,它不会影响 "user:likes" 散列中除字段之外的其他字段:"key"