该观点 +1;
- memory Usage 和 profile mem 消耗对不上
- 看 go-threshold 就 hold 了 25GB 的内存,reserved-by-go 也有 12GB 内存,这 12GB 是 GO 语言自己 hold 的,在 v5 TiDB 默认采用的应该就是 激进的 内存释放策略,这块也没什么可调的了。如果想从这块调的话🤔,可以试一下 v6.3.0,他是用 go 1.9 build 的,释放内存会更激进写。看是生产环境,可以把业务流量用 https://github.com/zyguan/mysql-replay/tree/dev mysql-replay 采集下生产流量,然后测试环境持续的压新版本,如果新版本不出现该种情况,证明该问题新版本消失。
MySQL Replay 流量回放工具说明(2).pdf (308.3 KB)