我正在使用Redis构建Rails Web应用程序。我尝试创建的密钥ID会增加一个密钥, 附加一个类型。例如:HMSET user:2 name 'John' age '22'
。然后下一个将是HMSET user:3 name 'Evan' age '29'
,依此类推。我必须通过应用程序设置密钥的user
部分。我想知道是否有办法INCR
每个密钥的id(:2
)部分,而忽略了类型。我不希望通过应用程序执行此操作,因为我将通过Unicorn或Puma运行它的多个实例,因此可能会在不同的实例上同时写入相同的密钥。在Redis中这可能吗?提前谢谢。
答案 0 :(得分:1)
使用常规密钥存储最后一个ID,并将INCR与每个新用户一起存储。接受INCR的回复,并将其用作“ID'您的密钥名称的一部分(使用HMSET命令)。
即使您有多个应用实例,INCR-ing也会确保您不会重复使用ID。