建议用方案乙
[toc]
场景
redis 中存在大量 key。 其中有一部分是用户登陆的 session_id
, 结构是 :
需求: 有多少用户在线
方案
方案甲
这种方式简单快捷,一次性查到所有用户。
但是,如果有 1 百万用户,这时候对于 redis 的压力🍐,可想而知。
方案乙
SCAN
方式
记录游标,循环取出
下面是 go 语言代码案例
go1.21
go get github.com/redis/go-redis/v9
拓展
但是有一点要注意,你指定的批次数量,不一定会完全一样,就算库里大于你的单批次的数量。