redis里能不能针对set数据的每个member设置过期时间?
2017-07-20 17:11
441 查看
redis里能不能针对set数据的每个member设置过期时间?[点击该链接查看原贴地址]
想要使用redis的set数据集记录一组数据,每一条数据的过期时间都是30天,但这些数据不是同一天加进去的。也就是说这组数据不会在同一时间过期。这样就不能对set的key进行过期时间设定,因为一旦设置了key的过期时间,所有的member会同时过期。但是在redis的语法里又没有发现针对每个member的过期时间设定方法。请问大家有没有什么好的方法解决这个问题?用hash,放入的member的对象记录放入redis的时间和真实数据,获取的时候逻辑判断是否过期.
评论(0)| 引用此答案| 举报 (2014-09-23
14:50)
1
言知之易2年前
存的时候,只能存不过期的,同时存入时间戳,然后取的时候,根据时间戳代码上操作。
评论(0)| 引用此答案| 举报 (2014-09-24
19:26)
1
ydx20082年前
set的score存储时间值,每天定时扫描一下哪些过期的
评论(0)| 引用此答案| 举报 (2014-09-25
10:16)
1
牟宗民2年前
第一种方法,拆分成多个key,每个key设置过期时间。第二种方法改为hashMap存储,加一个过期时间的字段。
评论(0)| 引用此答案| 举报 (2014-09-25
19:25)
1
catch232年前
不能。可以用sorted set,把要过期的member和key的信息放在sorted set的member里,把过期时间放在score中。跑个任务用zrangebyscore遍历就行了。用sorted set好处是只需要遍历过期的member,不用扫描整个过期member集合。
相关文章推荐
- redis里能不能针对set数据的每个member设置过期时间?
- 002-Redis五种数据类型-设置key的过期时间
- redis 设置过期时间,以文件夹形式展示key显示缓存数据
- redis 一二事 - 设置过期时间,以文件夹形式展示key显示缓存数据
- 使用Redis sorted set实现集合设置member过期
- redis 一二事 - 设置过期时间,以文件夹形式展示key显示缓存数据
- 关于redis使用set时设置超时时间的问题
- Redis设置键的生存时间或过期时间
- redis key 过期时间如何设置
- redis需要设置过期时间吗
- Redis设置和更新Key的过期时间
- Redis设置Key的过期时间 – EXPIRE命令
- Redis设置过期时间
- Python操作Redis之设置key的过期时间实例代码
- Redis的设置过期时间
- redis中的key设置过期时间
- redis有效时间设置及时间过期处理
- spring-data-redis 使用pipeline批量设置过期时间的bug
- Redis(五):关于过期键(1)过期键的设置、获取和删除过期时间
- 虚拟机安装redis 以及 redis五种数据类型 key命令(过期时间) redis持久化方案 教科书笔记