我有一个golang程序,定期运行一些例程。它的内存(顶部结果中的RSS)在一些服务器上持续增长,但在一些服务器上却没有增长。奇怪的是,RSS增长实例的pprof结果显示该进程只占用很少的inuse_space内存。

这是否意味着内存正在等待golang进行GC?但是48小时后,内存从26000kb增长到74000kb,我想golang自己应该已经做了好几次GC了。

我已经使用sync.Pool来避免频繁使用新的()对象。如何减少内存使用量?

下面是详细的数据,提前谢谢!

48小时内的RSS使用量(单位: kb):

inuse_space:

alloc_space: