redis内存分析工具rdbtools
当Redis的内存已经快满的时候,我们能做什么呢?
最直接的方法就是分析一下Redis内存的构成,看是哪些键比较大,或者比较多,然后考虑一下对应的功能能不能优化,例如减少超时时间,例如不必要的数据不用放缓存,例如有些键已经没有用了,但是没有及时删除,也没有超时时间
分析Redis内存的构成,常用的是用分析工具rdbtools,这个工具可以导出redis的所有key,以及它占用的内存大小。
文档
一、安装
pip install python-lzf
pip install rdbtools
能执行rdb命令,表示安装成功
二、使用
(vsing_backend) [www@NingBo_10_1_33_26 data]$ rdb --help
Usage: rdb [options] /path/to/dump.rdbExample : rdb --command json -k "user.*" /var/redis/6379/dump.rdbOptions:-h, --help show this help message and exit-c FILE, --command=FILECommand to execute. Valid commands are json, diff,justkeys, justkeyvals, memory 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-o NOT_KEYS, --not-key=NOT_KEYSKeys Not to export. This can be a regular expression-t TYPES, --type=TYPESData types to include. Possible values are string,hash, set, sortedset, list. Multiple typees can beprovided. If not specified, alldata types will be returned-b BYTES, --bytes=BYTESLimit memory output to keys greater to or equal tothis value (in bytes)-l LARGEST, --largest=LARGESTLimit memory output to only the top N keys (by size)-e ESCAPE, --escape=ESCAPEEscape strings to encoding: raw (default), print,utf8, or base64.
三、基本命令
分析rdb文件,生成内存使用报告:
rdb -c memory -k "test*" dump.rdb > /data1/kevinlu/a.csv
- -c memory
- -k 表示只统计那些keys,支持通配符
- dump.rdb redis的RDB文件,通过bgsave生成
- 把结果导出到/data1/kevinlu/a.csv文件
注意:
- 报告中的内存使用量,单位是字节。报告中的内存使用量只是近似值。实际的内存使用量会比报告的使用量稍大,大概1.5倍到1.7倍左右。(测试的时候,Redis info命令的内存占用是8G,dump.rdb文件是2.7G,报告的内存使用总量是5G)
四、redis RDB文件生成
- 通过命令bgsave来生成,这样不影响线上业务
- 生成前需要备份原有的dump.rdb,不然会覆盖
- 生成前注意看机器内存,例如如果Redis内存已经到7G,那bgsave生成的过程中,redis进程需要再占7G内存,要注意内存够不够
- 注意硬盘够不够,不过这个一般是够的
转载于:https://www.cnblogs.com/Xjng/p/11350833.html
redis内存分析工具rdbtools相关推荐
- golang 编写的在线redis 内存分析工具 rma4go
redis 内存分析工具 rma4go redis是一个很有名的内存型数据库,这里不做详细介绍.而rma4go (redis memory analyzer for golang) 是一个redis的 ...
- redis 内存分析工具 `rma4go`
redis 内存分析工具 rma4go redis是一个很有名的内存型数据库,这里不做详细介绍.而rma4go (redis memory analyzer for golang) 是一个redis的 ...
- 一个golang编写的redis内存分析工具rma4go
redis 内存分析工具 rma4go 简介 redis是一个很有名的内存型数据库,这里不做详细介绍.而rma4go (redis memory analyzer for golang) 是一个red ...
- redis 内存分析工具 RMA 使用
RMA 介绍 RMA 是一个控制台工具,用于实时扫描 Redis 密钥空间并按密钥模式聚合内存使用情况统计信息.您可以使用此工具而无需在生产服务器上进行维护.您可以按所有或选定的 Redis 类型进行 ...
- Redis内存分析工具
2019独角兽企业重金招聘Python工程师标准>>> RdbTools是一个由于分析Redis dump.rdb文件的工具,有以下功能: 生成所有数据库和key的内存分析报告 把d ...
- Redis内存分析工具之redis-rdb-tools的安装与使用
操作系统:Centos7 1.redis-rdb-tools工具是用python语言编写的,所以首先需要安装python: 安装: (1)安装libffi-devel: yum -y insta ...
- 内存分析_Redis内存爆炸增长?你需要知道这一套Redis内存分析方法
Redis Redis介绍 NoSQL Redis是当前比较热门的NOSQL数据库之一,和Memcache一样,数据都是缓存在计算机内存中.完全开源免费,遵守BSD协议,是一个高性能的key-valu ...
- Windows系统内存分析工具的介绍
Windows系统内存分析工具的介绍(进程管理器,资源管理器,性能监视器, VMMap, RamMap,PoolMon) 微软官方提供多种工具来分析Windows 的内存使用情况,除了系统自带的任务管 ...
- [转] python运行时内存分析工具meliae
转自:https://my.oschina.net/markco/blog/601773 利用meliae来监控python进程的内存占用情况 meliae是一个python进程内存占用监控.分析工具 ...
最新文章
- getRotationMatrix2D 函数
- debian中添加sudo命令
- (Spring)整合mybatis
- .Net应该学什么怎么学(三)
- CSS_03_04_CSS伪元素选择器
- 关于c++中运算符重载
- ue查找文件中每行第二个单词_UI设计和UE/UX设计有什么区别?它们的晋升路径是什么?...
- javaEE异常摘要——更换工作区相同tomcat当部署在同一个项目疑难解答
- 字节跳动高工面试:mysql主从复制延迟
- 当桌面的快捷方式图标左下角出现一个X(叉)的时候应该怎么去掉
- WinForm中为按钮添加键盘快捷键,超简单,亲测有效
- matlab上机操作作业指导书,LED自动固晶基本操作1
- 第一章 计算机网络参考模型
- 多进程——守护进程例子
- python合并单元格的方法是_python合并多个excel单元格的方法
- 【网络安全】OSSIM平台网络日志关联分析实战
- 一个测试经理/测试主管/测试总监的工作总结
- selenium+java发送cookie,绕过验证码登录
- html乡愁代码,Homesick 乡愁
- C++设计模式-中介者模式详解
热门文章
- 下降沿触发的jk触发器(带异步复位和置位功能)_边沿触发器 || D触发器 || JK触发器 || 逻辑功能转换 工作特性 || 重难点 || 数电...
- Lesson3.2 variables
- VS2008中的一些命令窗口
- 矿区无人机影像地物提取(语义分割)
- python go rpc_Python RPC 之 gRPC
- 基于相关系数的影像匹配_论文推送 | 基于最优匹配算法的像控点电子点之记制作研究...
- mysql的字段长度_【mysql】字段类型和长度的解释
- python的networkx 算法_python图算法库Networkx笔记 - Node and Centrality
- Fixjs——显示交互基类InteractiveObject
- 白话SCRUM 之四:燃尽图