Vm.overcommit_memory=2 is always the right setting
5 months ago
- #System Administration
- #Linux
- #Memory Management
- Linux内核的`vm.overcommit_memory`系统参数控制内存分配行为。
- 内存过量使用改变了内存分配契约:成功的分配并不保证实际内存可用性。
- 过量使用机制用尽力而为模式取代了快速失败的事务型分配,将故障延迟到内存访问时才暴露。
- 禁用过量使用可确保在内存不足时立即分配失败,从而恢复准入控制机制。
- 故障局部性更利于调试;过量使用机制故意牺牲了这一特性,导致故障更难诊断。
- Redis不建议禁用过量使用,但依赖过量使用机制恰恰暴露了应用程序的错误处理能力不足。