Java 后端面试题库 / 全部题解免费阅读理解原理,有条理地回答

Redis 的内存回收怎样发生?

查看完整题解

参考回答

直接回答

键到期会被过期机制处理,超过内存限制时可能触发淘汰。客户端也可删除键。实际释放对象内存是否延后,受命令及 lazyfree 等设置影响。

讲清原理

UNLINK 先让键从键空间移除,再让后台线程回收对象。对象释放后,分配器可能保留内存供复用,RSS 不一定马上下降。

到期判定、后台清理与内存淘汰各有触发条件
到期判定、后台清理与内存淘汰各有触发条件

例子与易错点

移除一个大列表时可评估 UNLINK,再看异步释放积压与主线程延迟。别把删除完成和操作系统内存已经归还当成一件事。

相关题 · 第 21 题、第 23 题

这道题,你掌握得怎么样?

掌握程度由你主动标记,阅读和收藏不会自动改变状态。