gpt4 book ai didi

ruby - 计算 redis 键而不在 Ruby 中获取它们

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

我在 Redis 中保存了一个在线用户列表,一个键对应一个用户。 key 设置为在 15 分钟后超时,因此我要做的就是查看过去 15 分钟内有多少用户大致处于事件状态,我可以这样做:

redisCli.keys('user:*').count

问题是随着 key 数量的增加,在计算所有 key 之前获取所有 key 所需的时间显着增加。有没有一种方法可以在不必先获取所有 key 的情况下对 key 进行计数?

最佳答案

有一种方法可以直接索引 Set 或 Sorted Set 中的键,即使用新的 SCAN command .这取决于用例、内存/速度权衡以及所需的计数精度。

另一种选择是使用 Redis HyperLogLogs,请参阅 PFADDPFCOUNT .

关于ruby - 计算 redis 键而不在 Ruby 中获取它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23719158/

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