美文网首页
redis慢查询

redis慢查询

作者: steamed_bun | 来源:发表于2020-01-13 11:46 被阅读0次

当redis命令执行时间大于设置的时间,redis会将此命令标记为慢查询,并记录到慢查询d日志队列中

  1. redis命令执行的步骤

    • 1⃣️客户端发送命令到redis
    • 2⃣️命令进入队列排队
    • 3⃣️redis执行命令
    • 4⃣️返回结果
      注:所谓的命令执行时间只指【3⃣️redis执行命令】这一步(其实也很明显只会有这一步,1⃣️4⃣️是网络开销,2⃣️依赖于其他命令的执行速度)
  2. 慢查询配置


    • slowlog-log-slower-than 指定被标记为慢查询的时间阙值
      • 时间的单位是微秒,即1000000是1秒
      • 默认是:10000微秒
      • 负数将禁用慢查询日志
      • 0会强制记录每一个命令为慢查询
      • 支持动态修改,无需重启redis config set slowlog-log-slower-than 1000
    # The following time is expressed in microseconds, so 1000000 is equivalent
    # to one second. Note that a negative number disables the slow log, while
    # a value of zero forces the logging of every command.
    slowlog-log-slower-than 10000
    
    • 建议设置: 1000μs

    • slowlog-max-len指定慢查询日志队列的长度
      • 默认是:128
      • 长度没有限制,但是注意,慢查询日志将记录在内存
      • 采用先进先出原则,当队列满了且来了一条新的命令,则最先进入的命令弹出
      • 支持动态修改,无需重启redis config set slowlog-max-len 1000
    # There is no limit to this length. Just be aware that it will consume memory.
    # You can reclaim memory used by the slow log with SLOWLOG RESET.
    slowlog-max-len 128
    
    • 建议设置: 1000左右
      • 定期持久化日志

  3. 慢查询的命令

    • slowlog get [n] 获取慢查询,n是条数
      • 返回值示例(设置slowlog-log-slower-than为0)
      • set hh as
        slowlog get 1
         1) (integer) 0 # 每个慢查询条目的唯一的递增标识符 
          #在Redis服务器运行期间绝不会被重置,仅在Redis服务重启才重置它
         2) (integer) 1578886475 # 处理记录命令的unix时间戳
         3) (integer) 1892 # 命令执行所需的总时间,以微秒为单位
         4)   1) "set" # 组成该命令的参数的数组
              2) "hh"
              3) "as"
        
    • slowlog reset 清空慢查询队列,回收慢速日志使用的内存
    • slowlog len 慢查询队列长度

相关文章

  • 《redis开发与运维》——小功能大用处

    本章介绍了一下redis的功能: 慢查询分析 慢查询分析可以打印redis执行超时的命令日志。慢查询查询到的是执行...

  • redis的慢查询

    一 什么是redis的慢查询 慢查询并不是redis特有的,mysql也会提供慢查询日志供相关人员分析 先看看re...

  • redis自带的那些工具

    慢查询日志 1、设置慢查询配置 redis>config set slowlog-log-slower-than ...

  • redis慢查询

    当redis命令执行时间大于设置的时间,redis会将此命令标记为慢查询,并记录到慢查询d日志队列中 redis命...

  • Redis 如何分析慢查询操作?

    什么是慢查询 和mysql的慢SQL日志分析一样,redis也有类似的功能,来帮助定位一些慢查询操作。 Redis...

  • Redis 如何分析慢查询操作?

    什么是慢查询 和mysql的慢SQL日志分析一样,redis也有类似的功能,来帮助定位一些慢查询操作。 Redis...

  • Redis如何分析慢查询操作?

    什么是慢查询 和mysql的慢SQL日志分析一样,redis也有类似的功能,来帮助定位一些慢查询操作。 Redis...

  • Redis如何分析慢查询操作?

    什么是慢查询 和mysql的慢SQL日志分析一样,redis也有类似的功能,来帮助定位一些慢查询操作。 Redis...

  • Redis和Mongodb查看慢查询

    1. Redis查看慢查询: Redis 的慢查询日志功能用于记录执行时间超过给定时长的命令请求, 用户可以通过...

  • Redis学习--小功能大用处

    ·慢查询分析:通过慢查询分析,找到有问题的命令进行优化。·Redis Shell:功能强大的Redis Shell...

网友评论

      本文标题:redis慢查询

      本文链接:https://www.haomeiwen.com/subject/ddkmactx.html