网站首页 > 技术教程 正文
如今越来越来的系统中使用redis作为缓存系统,但是随着用户量的增长,业务数据不断增多,redis服务器的内存空间有可能会到瓶颈了,及时观察redis中的各种键内存占用多少,会方便我们评估何时升级redis服务器规格,以及对于是否需要进行程序优化来设计合理的存储结构都会有很大帮助,下面给大家介绍两款工具rdr和redis-rdb-tools,可以很好的满足我们的需要
- redis-server版本 3.2
- rdr版本 0.0.1
- redis-rdb-tools版本 0.1.15
rdr工具的使用
RDR(redis data reveal)是一个用于解析redis rdb备份文件的工具。基于golang实现,可以实现根据rdb文件生成一份详细的内存占用数据报告,并且能在本地启动一个server进程,在网页中呈现出美观的数据报告
详细使用参考官方仓库:
https://github.com/xueqiu/rdr
安装
rdr提供了linux/OSX/Windows下的可执行文件,直接点击下载,我这里演示Windows下的使用方式
下载下来后存储到d:/dev路径下
使用方式
1.首先要去redis服务器端将rdb文件复制到本地,为了方便,我将rdb文件放到了rdr工具所在目录
这里再说下redis rdb文件该怎么找到,通过查看redis服务器配置文件redis.conf,搜索dbfilename可以快速定位到该配置,按照路径就可以找到redis rdb备份文件了
2.在rdr工具所在的路径下打开命令行窗口,执行指令
rdr-windows.exe show dump.rdb
可以看到指令执行成功后,在本地启动了server,监听端口8080
3.打开浏览器,访问http://localhost:8080/,能看到详细的内存占用数据报告,包括键数量、不同的数据类型、元素计数等
不过通过网页版的数据报告中有个小问题,对于redis中的不同数据库没有明显的区分展示~,混在一起,不是太清晰
redis-rdb-tools工具的使用
采用python实现的rdb文件解析工具,这个可以支持单个key的内存占用情况查询
详细使用参考官方仓库:
https://github.com/sripathikrishnan/redis-rdb-tools/
安装
1.安装python环境,我这里安装了python2.7.15
2.通过pip安装redis-rdb-tools
pip install rdbtools python-lzf
我这里python-lzf库没有安装成功,不过不影响实际使用,这个库是为了加速rdb文件解析速度~
使用方式
3.安装完成后就可以在命令行中使用了,输入指令生成内存报告文件
rdb -c memory dump.rdb -f redis-memory.csv
等待一段时间,命令阻塞执行完成后,就会在-f参数指定的路径下生成对应的文件
用excel打开生成的csv文件,可以看到详细的统计结果,包含了所有数据库下所有key的内存占用情况~
redis-rdb-tools中还带了一个很有用的命令,能帮助我们直接查询单个key的内存占用情况,命令格式如下
redis-memory-for-key -s redis服务器地址 -p redis服务器端口 -a redis服务器密码 -d redis数据库序号 key名称
执行测试下效果,可以看到命令执行完成后,直接回显出指定key对应的内存占用情况了
注意该操作在生产环境下慎用,视key大小情况再行决定是否执行,有可能会阻塞执行很长时间才能计算出结果~
- 上一篇: linux性能优化之内存篇
- 下一篇: 解决银河麒麟 mate-indicators 高内存占用问题
猜你喜欢
- 2025-05-22 linux内存碎片防治技术
- 2025-05-22 Linux内存架构看完就赚到了numa的优势slab机制
- 2025-05-22 Linux中何为Buffer,cache,源码深入剖析
- 2025-05-22 【转载】golang内存分配
- 2025-05-22 Linux 内核“偷吃”了你的内存!
- 2025-05-22 Windows 10新预览版占据了大量内存?别担心
- 2025-05-22 Linux共享内存使用常见陷阱与分析
- 2025-05-22 Linux 系统卡顿问题的排查思路
- 2025-05-22 快速解决 Linux 磁盘空间不足问题:三步轻松找出大文件
- 2025-05-22 Prometheus 企业级实用案例及对应的PromQL表达式
你 发表评论:
欢迎- 最近发表
-
- Win11学院:如何在Windows 11上使用WSL安装Ubuntu
- linux移植(Linux移植freemodbus)
- 独家解读:Win10预览版9879为何无法识别硬盘
- 基于Linux系统的本地Yum源搭建与配置(ISO方式、RPM方式)
- Docker镜像瘦身(docker 减小镜像大小)
- 在linux上安装ollama(linux安装locale)
- 渗透测试系统Kali推出Docker镜像(kali linux渗透测试技术详解pdf)
- Linux环境中部署Harbor私有镜像仓库
- linux之间传文件命令之Rsync傻瓜式教程
- 解决ollama在linux中安装或升级时,通过国内镜像缩短安装时长
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)