Redis 基础教程

Redis 命令

Redis 高级教程

Redis 笔记

original icon
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.knowledgedict.com/tutorial/redis-command-memory-usage.html

Redis MEMORY USAGE 命令

Redis 服务器 Redis 服务器


Redis MEMORY USAGE 命令给出一个 key 和它值在 RAM 中占用的字节数。返回的结果是 key 的值以及为管理该 key 分配的内存总字节数。对于嵌套数据类型,可以使用选项 SAMPLES,其中 COUNT 表示抽样的元素个数,默认值为 5。当需要抽样所有元素时,使用 SAMPLES 0。

命令格式

MEMORY USAGE key [SAMPLES count]

可用版本:>=4.0.0

时间复杂度:O(N),N 为 SAMPLES 的个数

命令返回值

返回使用的内存的字节数。

示例

在 redis 64 位版本 V4.0.1 和 jemalloc 做内存分配器的情况下,空 string 可定义如下:

redis> SET "" ""
OK
redis> MEMORY USAGE ""
(integer) 51

如上,实际数据为空,但是存储时仍然耗费了一些内存,这些内存用于 Redis 服务器维护内部数据结构。随着 key 和 value 的增大,内存使用量和 key 大小基本成线性关系。

redis> SET foo bar
OK
redis> MEMORY USAGE foo
(integer) 54
redis> SET cento 01234567890123456789012345678901234567890123
45678901234567890123456789012345678901234567890123456789
OK
redis> MEMORY USAGE cento
(integer) 153
Redis MEMORY STATS 命令将服务器的内存使用情况以数组形式返回,内存使用信息以指标和相对应值的格式返回。 ...
Redis MEMORY HELP 命令返回不同子命令的说明。 ...
Redis MEMORY PURGE 命令尝试清除脏页以便内存分配器回收使用。该命令目前仅实现了 jemalloc 作为内存分配器的内存统计 ...
Redis MEMORY DOCTOR 命令列出 Redis 服务器遇到的不同类型的内存相关问题,并提供相应的解决建议。 ...
Redis MEMORY MALLOC-STATS 命令提供内存分配情况的内部统计报表。该命令目前仅实现了 jemalloc 作为内存分配器 ...