我希望 Redis 返回一些内存。我将 maxmemory 降低了 10GB,但注意到 Redis 仍然在基于“used_memory_rss”的 RSS 中“坚持下去”。基于http://redis.io/topics/memory-optimization,Redis 似乎不会将内存返回给操作系统。我该如何强制执行此操作?有没有办法在不重启 Redis 的情况下做到这一点?
我希望 Redis 返回一些内存。我将 maxmemory 降低了 10GB,但注意到 Redis 仍然在基于“used_memory_rss”的 RSS 中“坚持下去”。基于http://redis.io/topics/memory-optimization,Redis 似乎不会将内存返回给操作系统。我该如何强制执行此操作?有没有办法在不重启 Redis 的情况下做到这一点?
我遇到了同样的问题,这个答案很有帮助。
可以动态重新配置 redis,但在下次重启之前不会重新读取配置文件。为此,您必须使用
CONFIG
命令更改值。来自 http://redis.io/topics/config 的片段
配置集详细信息
如果这不起作用并且您有一个奴隶,您可以和他们一起玩 shell 游戏并减少奴隶的内存,重新启动它,将其提升到主人并减少原始主人的内存并重新启动它。