*Redis MEMORY MALLOC-STATS 命令
MEMORY MALLOC-STATS 返回内存分配器(jemalloc/tcmalloc 等)的内部统计信息,用于深入分析内存分配行为。
*语法
MEMORY MALLOC-STATS
*参数说明
无参数。
*返回值
- String:内存分配器的详细统计信息,格式为纯文本或 CSV 风格
*时间复杂度
O(1)
*
*示例
> MEMORY MALLOC-STATS
"Allocated: 1048576, active: 2097152, mapped: 8388608..."
*常见错误
| 错误 | 原因 | 解决 |
|---|---|---|
| ERR wrong number of arguments | 传入了额外参数 | 不需要任何参数 |
*最佳实践
- 内存分配器统计对普通用户较底层,通常由高级用户或开发者使用
- 结合 MEMORY STATS 和 INFO memory 综合判断内存健康状况
- 遇到疑似内存分配器层面的问题时使用
- 输出内容因分配器类型(jemalloc/tcmalloc)和版本而异
*FAQ
Q1: 为什么输出内容很长且难懂? A: 这是分配器原始统计,面向开发者或高级运维人员,普通用户可用 MEMORY DOCTOR 替代。
Q2: 所有 Redis 版本都支持吗? A: 需要 Redis 使用 jemalloc 或支持统计接口的分配器编译。某些精简构建可能不支持。
Q3: 和 INFO memory 有什么区别? A: INFO memory 是 Redis 层面的统计;MALLOC-STATS 是底层内存分配器的统计。