Redis缓存可以存储列表中每个条目的生存时间吗?

njthzxwz  于 2022-11-28  发布在  Redis
关注(0)|答案(1)|浏览(112)

据我所知,redis缓存就像一个字典键-值,所以如果我有一个键和一个列表,我可以为列表中的每一项单独设置ttl吗?
物料1-累计5000物料2-累计7000物料3-累计8500等

i2loujxw

i2loujxw1#

你不能为列表中的每一项单独设置ttl。但是如果你真的有必要实现它,我推荐这样的解决方案:

  • 使用得分=时间戳的已排序集合(ZSET)

插入元件

ZADD yourlist 5000 item1    
ZADD yourlist 7000 item2
ZADD yourlist 8500 item3

获取从无穷大到无穷大排序值

ZRANGEBYSCORE mykey -inf inf

删除值(从-infinity到6000)=〉将删除项目1

ZREMRANGEBYSCORE mykey -inf 6000

您可以再次从无穷大到无穷大获取排序值以查看结果。

相关问题