简单描述一下我这边的情况,这边参与的一个项目使用的是docker 项目,然后呢项目中有个业务需要将大量数据存在内存里或者缓存里,然后呢最近数据量上来之后,redis 内存占用过大,所以需要一个工具来分析哪些key值占用过大,从而优化流程或者键值结构。我这边找到的就是RDR工具,其他也有很多介绍RDR的文章,我是参考了他们的文章自己使用的。
首先就是安装包 来自 Redis内存分析工具RDR-阿里云开发者社区
Linux版 | https://link.csdn.net/?target=https%3A%2F%2Flinks.jianshu.com%2Fgo%3Fto%3Dhttps%3A%2F%2Fgithub.com%2Fxueqiu%2Frdr%2Freleases%2Fdownload%2Fv0.0.1%2Frdr-linux |
Windows版 | https://link.csdn.net/?target=https%3A%2F%2Flinks.jianshu.com%2Fgo%3Fto%3Dhttps%3A%2F%2Fgithub.com%2Fxueqiu%2Frdr%2Freleases%2Fdownload%2Fv0.0.1%2Frdr-windows.exe |
我这边使用的windows 的版本,我将容器中的*.rdb 文件拷贝出来到本地,如图1
图1
之后在地址栏输入cmd,之后输入 rdr-windows.exe show -p 799 ./dump.rdb 完事之后回车
格式是 程序.exe show -p 端口 *.rdb
这个解析过程需要一段时间,等待一下,完成后如下图2
图2
之后访问localhost:799 这里根据自己输入的端口去访问,不必多说。
关闭的话ctrl+c 就有关闭效果
使用过程中参考以下文章: