我们正在部署Node.js应用程序。这个应用程序似乎消耗了比它应该更多的RSS内存。所以我们开始深入研究,我们发现了以下内容,感谢process.memoryUsage();
RSS内存快速增长到400MB左右,在400MB-500MB内保持稳定,小小起伏(Garbage collector运行?)
heapUsed快速增长到50MB,然后保持在该级别(20MB到100MB之间)。
heaptotal总是比heapUsed多30 MB。
如您所见,堆与RSS之间存在巨大差异,这是我认为应该关注的地方。我们的堆中似乎没有任何非常严重的泄漏。
现在,RSS中的内容不在堆中?我相信C扩展,和Buffers,对吗?如果是这样,我们如何调试它。我们还应该寻找什么?
答案 0 :(得分:3)
在不知道您的应用正在做什么的情况下,无法对此发表评论。
如果V8堆使用率明显低于RSS,则是,它必须是外部缓冲区和非V8对象使用的其他内存。
你能公开一些代码吗?