开发者社区> 问答> 正文

请教各位如何统计reids内的特定key?

是这样,项目的在线好友是用redis的set做的,在每个用户登录的时候
set user_123466 时间戳 60*5 //user_用户id
这样里面有很多user_*的数据,现在要统计在线人数,怎么查找呢?
当前库还有许多其他信息,所以不能用dbsize,
info里面的key数量也不能用.

展开
收起
落地花开啦 2016-06-14 15:03:26 2229 0
2 条回答
写回答
取消 提交回答
  • 就职于阿里云数据库技术组,从事redis引擎开发工作,https://github.com/soloestoy

    redis单线程处理用户命令,数据量大时keys会对性能影响较大,如果对用户数要求不是特别精确的话可以用scan代替

    2019-07-17 19:37:46
    赞同 展开评论 打赏
  • 喜欢技术,喜欢努力的人

    20w数据测试,
    在cli模式keys *用时11秒,
    在php里面用时0.2秒, 0.0

    $re = $redis->keys('*');    
    dump(count($re));

    可能php扩展里面做了些什么

    2019-07-17 19:37:46
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载