【发布时间】:2015-08-14 00:51:58
【问题描述】:
我刚刚开始研究 Redis,希望能够存储一个哈希数组,我可以在其中弹出一个随机键/值,然后在需要时将其放回。
所以在 Ruby 中我会有这样的东西
users = [{ username: "user1", password: "password"}, { username: "user2", password: 'password'}]
所以如果我想从数组中获取一个随机键/值对象,我会做这样的事情
@user = users.shuffle!.pop
然后把它放回数组中
users.push(@user)
使用 Redis 的想法是我有两个进程(基于 Ruby 的应用程序)需要同时共享一个用户池。一旦一个用户完成了一个进程,我希望它把它放回池中。
谁能指出我正确的方向
谢谢
【问题讨论】:
-
如果我理解正确的话,您需要从 Redis 中随机拉出一个 Key/Value 对,并阻止它,即在进程 1 完成之前没有其他进程可以使用它?