Performance Redis内存使用问题

Performance Redis内存使用问题,performance,docker,spring-boot,redis,Performance,Docker,Spring Boot,Redis,我有一个包含两个Redis docker实例(v3.2.5)的集群,用于缓存Spring boot microservices的响应 我已经禁用了所有持久性,密钥的数量随着时间的推移是稳定的,所有密钥都在5分钟到1天之间过期 尽管如此,我可以看到内存使用率在逐渐上升。它看起来像一天一次(大约午夜),它会占用大量内存,然后释放一些内存。 如果有任何方法可以配置Redis以避免使用那么多内存,那么有人知道这个过程可能是什么吗 我拥有的钥匙数量不足以证明我有这么大的内存 更新 拍摄数据库快照并将数

我有一个包含两个Redis docker实例(v3.2.5)的集群,用于缓存Spring boot microservices的响应

我已经禁用了所有持久性,密钥的数量随着时间的推移是稳定的,所有密钥都在5分钟到1天之间过期

尽管如此,我可以看到内存使用率在逐渐上升。它看起来像一天一次(大约午夜),它会占用大量内存,然后释放一些内存。 如果有任何方法可以配置Redis以避免使用那么多内存,那么有人知道这个过程可能是什么吗

我拥有的钥匙数量不足以证明我有这么大的内存

更新

拍摄数据库快照并将数据加载到新的Redis实例(同一版本,同一配置)后,使用的
内存比原始内存低10倍


密钥过期是否真的不能从内存中删除密钥?

您能将一段时间内的密钥数添加到图表中吗?我在图表中没有这些数据,但密钥数通常是恒定的,新创建的密钥过期。我不知道这是否能解释您的结果,但情况是这样的“密钥过期并不会真的从内存中删除密钥”。谢谢@KevinChristopherHenry。有趣的是,文档中说
所有已经过期的密钥都会从密钥空间中删除。
那句话中的“All”指的是在概率算法中碰巧看到的密钥Redis定期在具有过期集的密钥中随机测试几个密钥。已过期的所有密钥都将从密钥空间中删除。“