【Redis开发与运维】学习笔记(三)-----Redis慢查询

简介

慢查询是什么
慢查询日志就是系统在命令执行前后计算每条命令的执行时间,当超过预设阀值,就将这条命令的相关信息(例如:发生时间,耗时,命令的详细信息)记录下来。
慢查询能可以有效地帮助我们找到Redis可能存在的瓶颈。
如下图显示的redis中一条命令的生命周期,慢查询只统计步骤3。
在这里插入图片描述
慢查询的两个配置参数

  • 预设阀值-slowlog-log-slower-than
    它的单位是微秒(1秒=1000毫秒=1000000微秒),默认值是10000。如果slowlog-log-slower-than=0会记录所有的命令,slowlog-log-slowerthan<0对于任何命令都不会进行记录。
  • 慢查询记录存放地址-slowlog-max-len
    Redis使用了一个列表来存储慢查询日志,slowlog-max-len就是列表的最大长度。一个新的命令满足慢查询条件时被插入到这个列表中,当慢查询日志列表已处于其最大长度时,最早插入的一个命令将从列表中移出
    注:修改配置文件的两个方式:修改配置文件,或者使用config set命令动态修改。如果要Redis将配置持久化到本地配置文件,需要执行config rewrite命令
慢查询日志的访问和管理
  • 获取慢查询日志
    slowlog get [n] #n可以指定条数
  • 慢查询日志的属性组成
    慢查询日志的标识、id、发生时间戳、命令耗时、执行命令和参数,慢查询列表
    在这里插入图片描述
    • 获取慢查询日志列表当前的长度
      slowlog len
    • 慢查询日志重置(也可以认为是对列表进行清理操作)
      slowlog reset
慢查询建议
  • slowlog-max-len配置建议:线上建议调大慢查询列表,记录慢查询时
    Redis会对长命令做截断操作,并不会占用大量内存。增大慢查询列表可以
    减缓慢查询被剔除的可能,例如线上可设置为1000以上。

  • slowlog-log-slower-than配置建议:默认值超过10毫秒判定为慢查询,
    需要根据Redis并发量调整该值。由于Redis采用单线程响应命令,对于高流
    量的场景,如果命令执行时间在1毫秒以上,那么Redis最多可支撑OPS不到
    1000。因此对于高OPS场景的Redis建议设置为1毫秒

Redis Shell

Redis提供了redis-cli、redis-server、redis-benchmark等Shell工具。

redis-cli详解
  • -r(repeat)选项代表将命令执行多次
    redis-cli -r n(次数) 命令
  • -i(interval)选项代表每隔几秒执行一次命令,但是-i选项必须和-r选
    项一起使用
    redis-cli -r n(执行次数) -i n(隔的时间数) 命令
  • -x选项代表从标准输入(stdin)读取数据作为redis-cli的最后一个参
    数,例如下面的操作会将字符串world作为set hello的值
    echo "world" | redis-cli -x set hello
  • -c(cluster)选项是连接Redis Cluster节点时需要使用的,-c选项可以防止moved和ask异常。
  • -a(auth)选项,有了这个选项就不需要手动输入auth命令
  • -scan和–pattern
    –scan选项和–pattern选项用于扫描指定模式的键,相当于使用scan命令
  • –slave选项是把当前客户端模拟成当前Redis节点的从节点,可以用来
    获取当前Redis节点的更新操作。
  • –rdb选项会请求Redis实例生成并发送RDB持久化文件,保存在本地。
  • –pipe选项用于将命令封装成Redis通信协议定义的数据格式,批量发送
    给Redis执行
  • .–bigkeys
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值