授权协议: MIT
开发语言: Google Go 查看源码 »
操作系统: 跨平台
收录时间: 2018-07-11
提 交 者: 好好先森V5

这是一个 Go 语言实现的 Redis 内存分析工具:用于找出占用内存较多的 Key,将结果导出至 csv 文件。

示例代码

通过直接连接到 redis 来分析 key

analysis := NewAnalysis()
//Open redis: 127.0.0.1:6379 without password
err := analysis.Open("127.0.0.1", 6379, "")
defer analysis.Close()
if err != nil {
    fmt.Println("something wrong:", err)
    return
}
//Scan the keys which can be split by '#' ':'
//Special pattern characters need to escape by '\'
analysis.Start([]string{"#", ":"})
//Find the csv file in default target folder: ./reports
//CSV file name format: redis-analysis-{host:port}-{db}.csv
//The keys order by count desc
err = analysis.SaveReports("./reports")
if err == nil {
    fmt.Println("done")
} else {
    fmt.Println("error:", err)
}

通过 redis RDB 文件分析 key,但无法计算出 key 的大小

analysis := NewAnalysis()
//Open redis rdb file: ./6379_dump.rdb
err := analysis.OpenRDB("./6379_dump.rdb")
defer analysis.CloseRDB()
if err != nil {
    fmt.Println("something wrong:", err)
    return
}
//Scan the keys which can be split by '#' ':'
//Special pattern characters need to escape by '\'
analysis.StartRDB([]string{"#", ":"})
//Find the csv file in default target folder: ./reports
//CSV file name format: redis-analysis-{host:port}-{db}.csv
//The keys order by count desc
err = analysis.SaveReports("./reports")
if err == nil {
    fmt.Println("done")
} else {
    fmt.Println("error:", err)
}

Demo

 

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

go-redis-memory-analysis 的相关资讯

还没有任何资讯

go-redis-memory-analysis 的相关博客

memory analysis 集成eclipse

Memory analsys 集成eclipse 的内存分析工具安装。 Memory analsys 是一款分析内存中堆的工具。使用内存分析器来分析生产与数...

Redis: Reducing Memory Usage

High Level Tips for Redis Most of Stream-Framework's users start out with Redis and eventually move to Cassandra beca...

Redis Server Memory Optimization

在使用Redis的过程中,可以从以下几个方面进行记忆体的优化 控制key的长度,在保持key的名字有意义的前提下,key越短越好 尽量...

LOADING Redis is loading the dataset in memory

(error) LOADING Redis is loading the dataset in memory 异常状况描述: redis中dump.rdb文件到达3G时,所有redis的操作都会...

LOADING Redis is loading the dataset in memory

Redis出现错误 LOADING Redis is loading the dataset in memory 原因1:redis中dump.rdb文件到达3G时,所有redis的操作都会抛...

Redis内存优化memory-optimization

https://redis.io/topics/memory-optimization 官方文档 一、特殊编码: 自从Redis 2.2之后,很多数据类型都可以通过特殊编码...

redis info之memory模块详解

> info memory 指标 含义 used_memory 由 Redis 分配器分配的内存总量,包含了redis进程内部的开销和数据占用的内存,以字节(...

go-redis-memory-analysis 的相关问答

还没有任何问答,马上提问

评论 (0)

加载中
更多评论
0 评论
5 收藏
分享
在线直播报名
返回顶部
顶部