我希望在不同的时间后过期哈希的某些字段。从文档来看,它看起来不可能:http://redis.io/commands/expire。我能以某种方式模仿这种行为吗?目前我只是将哈希名称复制为其所有字段的前缀,并为每个字段添加过期。对于我想要存储的结构是:
"PEOPLE" : {
"NICK" : 29
"AMANDA" : 23
}
但我不能在" NICK"上设置过期,只能在整个哈希" PEOPLE"上。所以我把它转换为和键数值:
"PEOPLE_NICK" : 29 (expire 2 hours)
"PEOPLE_AMANDA" 23 (expire 1 hour)
但是有很多键,这使得管理起来非常困难,而且我需要通过公共前缀来获取所有内容。
答案 0 :(得分:0)
如果上面的示例是准确的表示形式,并且根据您使用数据的准确程度,您可以使用一个排序集,每个人的得分都是Unix时间戳。然后,您在Cron作业上使用zremrangebyscore来清除超出您可接受的窗口的项目。