美文网首页Redis
Redis第🔟课 慢查询

Redis第🔟课 慢查询

作者: 小超_8b2f | 来源:发表于2019-04-30 19:26 被阅读0次
    1. 先进先出队列
    2. 固定长度,当队列满了时,最先进入队列的会被踢出
    3. 保存在内存中,会随着Redis的重启而消失
    4. 当命令的执行时间超过配置文件的时间时,会被扔到慢查询队列
    1)生命周期
    生命周期图及2点说明 image.png
    2)两个配置

    1.修改配置文件,重新启动redis-server服务

    #慢查询时间阈值(单位:微秒,0代表记录所有的命令,<0 不记录慢查询) 
    slowlog-log-slower-than 10000
    # 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
    

    2.动态命令修改:

    127.0.0.1:6379> config get slowlog-max-len
    1) "slowlog-max-len"
    2) "128"
    127.0.0.1:6379> config get slowlog-log-slower-than
    1) "slowlog-log-slower-than"
    2) "10000"
    127.0.0.1:6379> config get slowlog-log-slower-than slowlog-max-len
    (error) ERR Unknown subcommand or wrong number of arguments for 'get'. Try CONFIG HELP.
    127.0.0.1:6379> config set slowlog-max-len 129
    OK
    127.0.0.1:6379> config get slowlog-max-len
    1) "slowlog-max-len"
    2) "129"
    
    3)三个命令

    slowlog len :获取慢查询队列长度
    slowlog get count :获取慢查询队列的count个元素
    slowlog reset :清空慢查询队列

    4)运维经验
    1. slowlog-max-len不要设置过大,默认10毫秒,通常设置1毫秒
    2. slowlog-log-slow-than不要设置太小,通常设置1000左右
    3. 理解命令生命周期
    4. 定期持久化慢查询 (slowlog get count ——> to MySQL)

    相关文章

      网友评论

        本文标题:Redis第🔟课 慢查询

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