• Redis内存爆分析


    先总结下在不能获取dump文件的时候,直接用redis-audit

    背景:

    运维同学说resis要爆了,让看下

    直接使用客户端

    测试环境可以直接在客户端这样分析

     然而 正式环境不支持

    手动统计

    先找到数量最多的

    计算内存统计

    占了差不多2G

    像这样逐个分析大Key比较费时,下面看下工具

    redis-memory-analyzer rma

     https://github.com/gamenet/redis-memory-analyzer

    这是一个python实现的分析工具,可以直接安装。

    这里直接使用docker启动

     执行分析,然额,redis占用太多,直接rma被Killed

     试试看在本地运行源代码,尝试更改超时时间什么的:

    克隆代码找到入口直接运行,看来是可用的,正在分析...

    但是当你的数据量足够大,就需要好多时间,无望

     redis-sampler

     找到了另一个分析工具,是ruby写的

    https://github.com/antirez/redis-sampler

    同样直接docker运行ruby环境,发现需要装redis模块,使用gem install redis安装

     

     https://github.com/redis/redis-rb

     

    这里我们的redis设置了验证,但是这个脚本默认无验证,这里要改下ruby脚本

    如果您的Redis实例需要身份验证的话,它无法做到开箱即用(out-of-the-box)。您需要修改脚本以适应密码的需求。最简单形式是:redis = Redis.new(:host => ARGV[0], :port => ARGV[1].to_i, :db => ARGV[2].to_i) and change it to: redis = Redis.new(:host => ARGV[0], :port => ARGV[1].to_i, :db => ARGV[2].to_i, :password => "add-your-password-here")
    

     因为我们挂载了脚本,所以直接在宿主机改最下面的那个配置,加入我们的密码,用tail看下

    下面直接开始分析

     这就是分析结果:这里只有各种类型的占比

    redis-audit

    https://github.com/snmaynard/redis-audit

    这是另一个ruby写的分析脚本

    同样docker运行,安装依赖,分析

     安装依赖,注意更新bundler

     调整传参

     分析汇总

    这个就看的比较清楚

     参考:【推荐】六大免费的Redis内存分析工具

     

  • 相关阅读:
    8月10日CSS总结
    CSS总结
    CSS总结
    Jquery属性&css 大全
    Jquery---选择器 大全
    Javascript第七天
    Javascript第六天
    Javascript第五天
    Javascript 第四天
    第三天 JavaScript运算符(续)
  • 原文地址:https://www.cnblogs.com/timseng/p/14695351.html
Copyright © 2020-2023  润新知