gpt4 book ai didi

redis 有序集查询以过期为条件

转载 作者:可可西里 更新时间:2023-11-01 11:12:09 25 4
gpt4 key购买 nike

我有一个带键 Z 和值的有序集:

1个“一个”
4个“b”
3 "c"

此外,我将 key a、b、c 设置为在不同时间后过期。

我想在 Z 中找到排名最高的值,使得作为键的值已经过期。有没有一种干净的方法可以做到这一点?

最佳答案

这是另一种方法:

从 Redis 2.8 开始,您可以订阅键空间或键事件通知,以便您的 Redis 客户端可以在过期发生时采取一些措施。参见 http://redis.io/topics/notifications

当您收到过期通知时,向另一个有序集添加一个条目,例如 Zexpires。然后,当您需要执行操作时,您可以使用 ZINTERSTORE 找到交集,并在交集的结果上使用 ZRANK 获得最高排名值。

提示:如果您要水平扩展,请确保您没有多个客户端观察键空间通知并尝试执行相同的计算。如果您有多个 Redis 客户端实例,您可能希望按照 proteneer 的建议手动执行操作。

关于redis 有序集查询以过期为条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19985075/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com