使用 redis-rdb-tools 解析 reids dump.rdb 文件及分析内存使用量
您目前处于:技术核心竞争力  2015-02-13

现在越来越多人开始使用 Redis 了,主要是因为它十分高效、性能强劲、扩展性好。先介绍几种分析 Redis 的工具!

- Redis-sampler

Redis-sampler 是 Redis 作者开发的工具,它通过采用的方法,能够让你了解到当前 Redis 中的数据的大致类型,数据及分布状况。

- Redis-audit

Redis-audit是一个脚本,通过它,我们可以知道每一类 key 对内存的使用量。它可以提供的数据有:某一类 key 值的访问频率如何,有多少值设置了过期时间,某一类 key 值使用内存的大小,这很方便让我们能排查哪些 key 不常用或者压根不用。

- Redis-rdb-tools

Redis-rdb-tools 跟 Redis-audit 功能类似,不同的是它是通过对 rdb 文件进行分析来取得统计数据的。

我用的是 Redis-rdb-tools,环境是 Windows(比 Linux 安装部署麻烦多了)

1. 安装 Ptyhon

Redis-rdb-tools 是基于 Python 语言的,所以要先安装 Python,选择的版本是 Python27(其中 Python32 有问题,不能解析 Redis-rdb-tools,望有搞定的同学多交流下)

不要忘记配置环境变量:

2. 安装 rdbtools

下载地址:https://pypi.python.org/pypi/rdbtools

cd 到 rdbtools 目录下执行安装命令:

python setup.py install

3. 安装 Pip

下载地址:https://pypi.python.org/pypi/pip

cd 到 Pip 目录下执行安装命令:

python setup.py install

4. 安装 Redis-rdb-tool

下载地址:https://github.com/sripathikrishnan/redis-rdb-tools

cd 到 Redis-rdb-tool 目录下执行安装命令:

python setup.py install

好了,致此 Redis-rdb-tool 安装完毕!

cd Redis-rdb-tool 根目录 \redis-rdb-tools-master\build\lib\rdbtools\cli,找到 rdb.py 文件,在命令行中执行如下命令:

rdb.py -help

5. 生成内存数据报告

rdb -c memory d:/redis/6379/dump.rdb > d:/memory.csv

生成 CSV 格式的内存报告。包含的列有:数据库ID,数据类型,key,内存使用量(byte),编码。内存使用量包含 key、value 和其他值。

注意:内存使用量是近似的。在一般情况下,略低于实际值。

可以根据 key 或数据库 ID 或数据类型对报告的内容进行过滤。

内存报告有助于检测是否是应用程序逻辑导致的内存泄露,也有助于优化 reids 内存使用情况。


转载请并标注: “本文转载自 linkedkeeper.com ”  ©著作权归作者所有