一、Redis Memory Analyzer (RMA)工具
Redis Memory Analyzer (RMA)是个Redis的key占用分析工具。
RMA运行的结果表格有两个突出的特点:
- 每一个key前缀的用户空间占比
- 每一个key前缀的查询次数占比
1.1 安装:
代码语言:javascript复制pip3 install rma
或者通过安装
代码语言:javascript复制pip3 install git https://github.com/gamenet/redis-memory-analyzer@v0.2.0
二、 使用方法:
rma -p 18000-b global
-b可以指定的选项包括'global', 'scanner', 'ram' and 'all'。这些选项可以综合使用,发挥查看使用Redis存储中的最大瓶颈点
2.1 global:Redis服务器统计
2.2. scanner选项:
按照key的分类和类型,进行空间百分比的统计
2.3. “ram”选项:
因为redis用到很多内部hash结构,ram可以看到内存的一些实际占用率
三、结论
1. 非活跃数据占用了大量的空间
2. 常用的IM短语(系统欢迎词)占用了大量的空间
3. 优化:非活跃用户数据和重新登录激活怎么做切换
4. Redis和Pika双写,Pika使用异步写,并设置消息的有效期,消息可以在Redis过期(有点像FIFO缓存淘汰),但是在Pika又有了备份。Pika有冷热数据区之分。