go 内存管理的变更

在 Linux 环境中,Go 的版本 1.12 - 1.15 由于使用到 Linux 的 MADV_FREE 特性,对内存进行 ”懒释放“ ,造成了 RSS (Resident Set Size,常驻内存集)虚高,容易出 OOM 的错误。可以采用设置 GODEBUG=madvdontneed=1 来解决。到 1.16 后,又改回了原有的 MADV_DONTNEED 。

参考文章如下: