如何使用缓存实现24小时抽奖记录存储?-灵析社区

你好我叫张倩话

使用缓存实现一个功能,存储当前时间前24小时的抽奖奖励记录,有以下要求: 1. 奖励记录条数5条; 2. 每条记录最长过期时间24h; 3. 若有新的满足条件的奖励记录,且记录条数小于5条,则删除最早的奖励记录,插入该条奖励记录。 4. 奖励记录需要一次性查出来; 大佬们有什么比较好的解决思路吗?或者又遇到这类问题么? 我的思路: 把所有抽奖记录ID存储在一个set或者list中,这样可以一次性获取到所有的抽奖记录。 每条抽奖记录作为一个独立的键值对存储在redis中,并设置对应的过期时间。这种设计在插入数据比较麻烦。 请问这类问题是否存在现有解决方案?

阅读量:26

点赞量:0

问AI
Kapp啊$0920
不太清楚你的奖励记录怎么来的,不过你可以看看这个方向能不能帮到你,你可以把抽奖记录都用zset 进行存储,分数为抽奖的时间,当每次获取这个zset数据的时候,就利用分数把超过24小时的分数都剔除,这样不就实现了