Redis使用量暴增,快速定位有哪些大key在作怪
发现redis使用量突然暴增,于是紧急扩容redis,不能影响服务运行。扩容之后,赶紧查找原因,突破口就是寻找存在哪些大key。
1. 将redis的dump.rdb文件下载到本地(一般redis的持久化文件以rdb的方式存储,在redis配置文件可以找到dump.rdb的存储路径)。
2. 用rdbtools工具生产内存报告,命令是 rdb -c memory,例子:
sudo rdb -c memory /redisfile/dump.rdb >test.csv
注意:rdb文件越大,生成时间越长。
Rdbtools是以python语言开发的。
GITHUB地址:GitHub - sripathikrishnan/redis-rdb-tools: Parse Redis dump.rdb files, Analyze Memory, and Export Data to JSON
3. 内存报告生成后,结合用linux sort命令排序,根据內存列排序,找出最高的key有哪些。例子:
sudo sort -k4nr -t , test.csv > sort.txt
4. 查看前1000个排序最高的数据
awk -F ',' '{print substr($3, 0,18)}' sort.txt | head -1000 | sort -k1 | uniq
5. 查看sort.txt的结果,一般能得出类似‘my_rank_top’开头的集合占用最高,排在了前面。若要查看类似‘my_rank_top’开头的key总共占用了多少内存,可以用命令:
sudo cat sort.txt | grep ‘my_rank_top’ | awk -F ',' '{sum += $4};END {print sum}'
6. 得知了my_rank_top这样的key占用最多内存,而且很可能是业务已经不再需要,但是长期在内存中没清理的,我们可以删除了这些集合。可以用模糊匹配key来删除,命令如下:
redis-cli -h 127.0.0.1 -p 6379 keys 'my_ranking_list*' | xargs redis-cli -h 127.0.0.1 -p 6379 del
另附:在本地启动redis加载dump.rdb文件时,一直load失败。搞了很长时间,终于找到原因:redis配置文件里databases要修改为256,本地默认是16,而产生原始dump.rdb的redis的databases就是256。
参考资料:
1. FAQ:https://github.com/sripathikrishnan/redis-rdb-tools/wiki/FAQs
2. redis dump文件规范: https://github.com/sripathikrishnan/redis-rdb-tools/wiki/Redis-RDB-Dump-File-Format
3. redis RDB历史版本: https://github.com/sripathikrishnan/redis-rdb-tools/blob/master/docs/RDB_Version_History.textile
4. redis-rdb-tools:https://github.com/sripathikrishnan/redis-rdb-tools
5.https://blog.csdn.net/jiangsanfeng1111/article/details/53523581
Redis使用量暴增,快速定位有哪些大key在作怪相关推荐
- 如何快速定位 Redis 热 key
背景 在 Redis 中,热 key 指的是那些在一段时间内访问频次比较高的键值,具体到业务上,商品的限时抢购.瞬时的新闻热点或某个全局性的资源,都极有可能产生热点 key. 热点 key 的出现可能 ...
- 如何快速定位 Redis 热 key?
背景 在 Redis 中,热 key 指的是那些在一段时间内访问频次比较高的键值,具体到业务上,商品的限时抢购.瞬时的新闻热点或某个全局性的资源,都极有可能产生热点 key. 热点 key 的出现可能 ...
- 战疫期,钉钉如何扛起暴增百倍的流量?【阿里云快速扩容新纪录】
疫情期间,在线教育.在线办公需求持续井喷,钉钉作为很多企业首选的在线办公软件,用户量激增,特别是钉钉视频会议.直播的需求随之飙升.同时,钉钉为了响应教育部门"停课不停学"的号召,宣 ...
- 手淘搜索流量暴增,快速打造爆款的核心方法
想要打造爆款首先第一步是必须要有流量,有了流量才有打造爆款的基础. 首先我们要知道形成爆款的因素,1大众化,2实惠,3点击率高点击量高,4宝贝数据要呈现上涨的趋势,5高的人气 收藏 加购物车量 深的浏 ...
- 流量暴增,掌门教育如何基于 Spring Cloud Alibaba 构建微服务体系?
作者 | 童子龙 掌门教育基础架构部架构师 **导读:**本文整理自作者于 2020 年云原生微服务大会上的分享<掌门教育云原生落地实践>,本文主要介绍了掌门教育云原生落地实践,主要围绕 ...
- 战疫期,钉钉如何扛起暴增百倍的流量?
疫情期间,在线教育.在线办公需求持续井喷,钉钉作为很多企业首选的在线办公软件,用户量激增,特别是钉钉视频会议.直播的需求随之飙升.同时,钉钉为了响应教育部门"停课不停学"的号召,宣 ...
- 苹果更新“查找”APP,三星发布新款SmartTag Plus,蓝牙防丢器市场暴增
苹果更新"查找"APP,三星发布新款SmartTag Plus,蓝牙防丢器市场暴增 苹果宣布推出更新的「查找」app,允许第三方产品透过私密且安全的苹果「查找」网络来查找,该网络由 ...
- 双十一电商流量暴增的背后,用户体验如何保障?
一年一度的"双十一",各大电商平台巅峰冲刺,活动期间流量暴增经常会遇到网络质量问题.多页面大元素资源加载慢.接口调用异常等问题,严重影响线上用户体验,造成电商平台流量和业绩损失.博 ...
- 关联与下钻:快速定位MySQL性能瓶颈的制胜手段
本文根据DBAplus社群[2018年1月6日北京开源与架构技术沙龙]现场演讲内容整理而成. 讲师介绍 李季鹏 新炬网络数据库专家 专注于MySQL数据库性能管理及相关解决方案,目前主要从事MyS ...
最新文章
- 关于伪静态网站的好处
- 计算几何常用算法的理论基础【转】
- JVM 调优实战--JVM的运行参数及jinfo查看运行参数信息
- 浅谈如何学习深度学习(经验之谈,仅供参考)
- vi / vim 字符替换详解
- python超神之路:Python3 列表list合并的4种方法
- JAVA安装作用_jdk安装配置及其作用
- java 判断字符串是否是整数
- 关于java 中 的 null。
- java下载的文件不完整_JAVA 解决FTP下载文件不完整问题
- 撸一款Flutter版『微信』
- nodejs后台系列--第四篇--koa(三)
- java 短信备份宝_Android实战教程第八篇之短信备份
- 9针串口的RS232、RS485、RS422引脚定义
- STM32 tjpgd软件JPEG解码后RGB888数据格式问题
- 软件测试-正交试验法
- testflight无法联网怎么办_疫情期间,汽车驾照和年检过期了该怎么办?
- 8篇论文详解用户历史行为序列建模方法
- liinux下安装jdk
- 组装办公室用计算机,(需要组装一批电脑,用于办公。多运用于普通办公软件,WORD、EXCEL、PPT、PS等。 要求实惠,可用集成显卡。)组装电脑excle模板...