我评估Redis.io是为了保持点击/记录流(然后保存到一个文件或系统,即聚合来自许多服务器的日志)。
添加到redis是简单的SADD http://redis.io/commands#set或LPUSH http://redis.io/commands#list
(我需要选择Set或List来将来自一个记录器的消息分组)
但是,检索只是逐个进行,例如LPOP。
我需要一个命令来返回Set或List中的所有当前值并立即删除它们。 如果获取所有内容然后使用2个命令删除所有内容,则可能会在一段时间内添加一些条目。
使用Redis时,Event logging with distributed database for node.js (MongoDB?)可能有更好的解决方案。
答案 0 :(得分:1)
对于集合,请尝试SMEMBERS命令:http://redis.io/commands/smembers 之后,您可以删除该集。
此外,您可能需要在相同的"事务"中执行这些命令,因此代码需要
MULTI
SMEMBERS yourset
DEL yourset
EXEC