【问题标题】:Redis: How can I check how much memory used in real time?Redis:如何实时查看使用了多少内存?
【发布时间】:2017-03-29 15:31:39
【问题描述】:

我想实时查看内存使用了多少,例如每次设置或插入一些数据时,我想知道增加了多少内存,总共使用了多少。

我尝试使用INFO 命令,并检查used_memoryused_memory_* 属性是否有效,但抱歉我发现它只显示系统分配的内存,因为每次我检查后都会检查它插入新数据,它们仍然保持不变

有什么方法可以检查 Redis 中使用的实时内存吗?

【问题讨论】:

    标签: memory-management redis


    【解决方案1】:

    used_memory 字段就是您要查找的内容。不是你说的系统分配的内存,这是进程内存分配器给Redis的内存。

    例子:

    > info memory
    ...
    used_memory:541368
    ...
    > set y "titi"
    OK
    > info memory
    ...
    used_memory:541448       # i.e. +80 bytes
    ...
    > del y
    (integer) 1
    > info memory
    ...
    used_memory:541368
    ...
    

    请注意,Redis 进行了许多与内存相关的优化。例如,它能够分解包含小整数的值。或者,如果您将数据附加到现有字符串,则相应的缓冲区不会在每次附加操作时增长。因此,根据这些优化,给定操​​作集的内存使用增加/减少并不总是一致的。

    【讨论】:

    • 如何测试redis是否还没有达到用于查询'pong'旁边的健康的最大内存限制?
    猜你喜欢
    • 2011-11-21
    • 2012-01-10
    • 1970-01-01
    • 1970-01-01
    • 2017-11-12
    • 1970-01-01
    • 1970-01-01
    • 2021-04-19
    • 2011-05-29
    相关资源
    最近更新 更多