zoukankan      html  css  js  c++  java
  • 如何访问redis海量数据而不影响redis正常工作?

    记住一定不要用如下命令:

      keys user*

      keys算法是遍历算法,复杂度是O(n),也就是数据越多,时间越高。

      如果以user为前缀的key数据量达到几百万,keys这个指令就会导致 Redis 服务卡顿,因为 Redis 是单线程程序,顺序执行所有指令,其它指令必须等到当前的 keys 指令执行完了才可以继续

    正确的命令应该是用: scan

      格式为:SCAN cursor [MATCH pattern]  [COUNT count]

      举例:scan 0 match user* count 4

      它的意思是从游标为0开始查询user为前缀的key, 每次返回4个

    它会返回一个新的游标和相应的结果,然后以这个新游标就可以查询下一批

  • 相关阅读:
    bzoj3302
    bzoj1264
    听风
    bzoj5073
    bzoj2144
    bzoj1263
    bzoj3653
    Docker 入门 2 镜像基本操作
    Docker 入门 1 准备 Docker 环境
    Docker Hub 镜像加速
  • 原文地址:https://www.cnblogs.com/cs99lzzs/p/11010054.html
Copyright © 2011-2022 走看看