Redis内存分析工具
2015-12-25 00:00
477 查看
摘要: Redis内存分析工具RdbTools使用
RdbTools是一个由于分析Redis dump.rdb文件的工具,有以下功能:
生成所有数据库和key的内存分析报告
把dump文件转换成JSON文件
用标准的diff工具比较2个dump文件
源码安装
命令一览:
只处理某些key(支持正则表达式):
只处理已a开始在db2的hash结构:
生成的csv格式如下:数据库编号,数据类型,key名,字节表示的内存使用量和编码。
内存使用量包括key,value和其他杂项。
注意内存使用量是预估的。通常实际内存使用量会比报告中要高。
内存报告可以帮助我们找到应用程序逻辑造成的内存泄漏,也可以帮助我们优化redis内存使用。
RdbTools是一个由于分析Redis dump.rdb文件的工具,有以下功能:
生成所有数据库和key的内存分析报告
把dump文件转换成JSON文件
用标准的diff工具比较2个dump文件
安装rdbtools
通过pip安装pip install rdbtools
源码安装
git clone https://github.com/sripathikrishnan/redis-rdb-tools cd redis-rdb-tools sudo python setup.py install
命令一览:
[root@virt]# rdb --help Usage: rdb [options] /path/to/dump.rdb Example : rdb --command json -k "user.*" /var/redis/6379/dump.rdb Options: -h, --help show this help message and exit -c FILE, --command=FILE Command to execute. Valid commands are json, diff, and protocol -f FILE, --file=FILE Output file -n DBS, --db=DBS Database Number. Multiple databases can be provided. If not specified, all databases will be included. -k KEYS, --key=KEYS Keys to export. This can be a regular expression -t TYPES, --type=TYPES Data types to include. Possible values are string, hash, set, sortedset, list. Multiple typees can be provided. If not specified, all data types will be returned
dump文件转json
解析dump文件并通过标准输出JSON:rdb --command json /var/redis/6379/dump.rdb
只处理某些key(支持正则表达式):
rdb --command json --key "user.*" /var/redis/6379/dump.rdb
只处理已a开始在db2的hash结构:
rdb --command json --db 2 --type hash --key "a.*" /var/redis/6379/dump.rdb
生成内存分析报告
使用-c memory命令生成每个key内存使用量的csv报告
rdb -c memory /var/redis/6379/dump.rdb > memory.csv
生成的csv格式如下:数据库编号,数据类型,key名,字节表示的内存使用量和编码。
内存使用量包括key,value和其他杂项。
注意内存使用量是预估的。通常实际内存使用量会比报告中要高。
内存报告可以帮助我们找到应用程序逻辑造成的内存泄漏,也可以帮助我们优化redis内存使用。
找到某个key的内存使用
redis-memory-for-key person:1 redis-memory-for-key -s localhost -p 6379 -a mypassword person:1
相关文章推荐
- redis安装问题小结
- Redis偶发连接失败案例实战记录
- Redis中实现查找某个值的范围
- Redis和Memcached的区别详解
- 分割超大Redis数据库例子
- Redis总结笔记(一):安装和常用命令
- Redis sort 排序命令详解
- 用Redis实现微博关注关系
- redis中修改配置文件中的端口号 密码方法
- 在Ruby on Rails上使用Redis Store的方法
- Redis和Memcache的区别总结
- 在Node.js应用中使用Redis的方法简介
- Redis服务器的启动过程分析
- web 应用中常用的各种 cache详解
- 利用yum安装Redis的方法详解
- 从MySQL到Redis的简单数据库迁移方法
- 为啥懒 Redis 是更好的 Redis
- 利用Redis实现SQL伸缩的方法
- 在Redis数据库中实现分布式速率限制的方法
- PHP+redis实现添加处理投票的方法