reids存储可视化分析

前言

提起redis,头脑中立马浮现,Redis (remote dictionary server)Redis 是一个开源的,存储 键值(key-Valus)数据库 ,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。日常工作中,缓存可能是我们使用最多的场景,集成redis到系统运行一段时间后,内存持续上涨(内存比起硬盘是宝贵的资源),有没想过,redis到底储存了一些什么数据,使用的是否合理?这就需要我们进行分析下,才能更好的优化,释放更多的内存

RDR工具

RDR 是解析 redis rdbfile 工具。与redis-rdb-tools相比,RDR 是由golang 实现的,速度更快。

  • 分析 Redis 内存中那个 Key 值占用的内存最多
  • 分析出 Redis 内存中那一类开头的 Key 占用最多,有利于内存优化
  • Redis Key 值以 Dashboard 展示,这样更直观

下载地址

linux

mac

Windows

工具权限添加

js 复制代码
# 工具下载好以后,可能需要添加可执行权限,此示例以linux平台操作
# 看个人喜欢,我比较喜欢下载下来,修改下名称,方便操作
mv rdr-linux rdr
# 赋值可执行权限
chmod a+x ./rdr*

使用方法描述

shell 复制代码
./rdr -h
NAME:
   rdr - a tool to parse redis rdbfile

USAGE:
   rdr [global options] command [command options] [arguments...]

VERSION:
   v0.0.1

COMMANDS:
     dump     dump statistical information of rdbfile to STDOUT
     show     show statistical information of rdbfile by webpage
     keys     get all keys from rdbfile
     help, h  Shows a list of commands or help for one command

GLOBAL OPTIONS:
   --help, -h     show help
   --version, -v  print the version

统计rdbfile并输出

如果全量分析,可以用此方式

命令描述

js 复制代码
NAME:
   rdr dump - dump statistical information of rdbfile to STDOUT

USAGE:
   rdr dump FILE1 [FILE2] [FILE3]...

例子:

js 复制代码
# 此方式是输入到命令窗口,如果数据量太大,查看不全
./rdr dump dump.rdb

# 推荐 把输出指向一个resulst.txt,然后打开result.txt查看
./rdr dump dump.rdb >result.txt

结果

统计rdbfile所有的key

命令描述 获取rdbfile所有存储的key

js 复制代码
./rdr dump -h
NAME:
   rdr dump - dump statistical information of rdbfile to STDOUT

USAGE:
   rdr dump FILE1 [FILE2] [FILE3]...
[root@dev4 redis]# ./rdr keys -h
NAME:
   rdr keys - get all keys from rdbfile

USAGE:
   rdr keys FILE1 [FILE2] [FILE3]...

例子

js 复制代码
# 直接输出到命令窗口,不好看
./rdr keys dump.rdb

# 推荐 输出结果指向一个文件,然后查看
./rdr keys dump.rdb > result.txt

结果

展示的部分结果

通过web页面,展示rdbfile 统计信息

推荐这种,因为有界面,清晰可见

命令描述

js 复制代码
./rdr show -h
NAME:
   rdr show - show statistical information of rdbfile by webpage

USAGE:
   rdr show [command options] FILE1 [FILE2] [FILE3]...

OPTIONS:
   --port value, -p value  Port for rdr to listen (default: 8080)

示例

js 复制代码
# -p 指定端口号,如果不指定,默认是8080
./rdr show -p 8088 dump.rdb
start parsing...
parse dump.rdb  done
# 看到这信息,说明已经rdbfile分析完成,通过ip+端口直接访问
parsing finished, please access http://{$IP}:8088

结果

总结

上面展示了工作的三种用法,推荐web页面展示这种方法使用,比较清晰,看起来也方便。通过这种工具,我们就能分析redis的使用情况,以及对不合理的使用,进行优化,减少内存的使用,释放更多的资源。

写作不易,如果刚好你有需要,此文对你有帮助,麻烦点赞评论收藏,谢谢。

相关推荐
qq_4592384944 分钟前
SpringBoot整合Redis和Redision锁
spring boot·redis·后端
是姜姜啊!1 小时前
java连接redis
java·redis
Z小明2 小时前
基于 Highcharts 实现 Vue 中的答题统计柱状图组件
前端·数据可视化
斯普信专业组3 小时前
K8S下redis哨兵集群使用secret隐藏configmap内明文密码方案详解
redis·kubernetes·bootstrap
利瑞华3 小时前
Redis 存在线程安全问题吗?为什么?
数据库·redis·安全
小金的学习笔记3 小时前
如何在本地和服务器新建Redis用户和密码
服务器·数据库·redis
听封3 小时前
Redis存在线程安全的问题吗?
数据库·redis·安全
Urf_read5 小时前
微服务入门-笔记
redis·笔记·微服务
清风微凉 aaa6 小时前
Redis-03高级篇中-多级缓存:
数据库·redis·缓存
一个假的前端男6 小时前
node 使用 Redis 缓存
数据库·redis·缓存