什么是node.js内存崩溃?

我们正在部署一个Node.js应用程序。 这个应用程序似乎正在消耗更多的RSS内存比它应该。 所以我们开始深入了解事物,并且发现了以下内容,这要感谢process.memoryUsage();

  • RSS内存快速增长到400MB左右,在400MB-500MB左右稳定存储,小起大落(垃圾收集器正在运行?)

  • 堆使用迅速增长到50MB,然后停留在这个水平(20MB和100MB之间)。

  • heaptotal总是比堆大约多30 MB。

正如你所看到的,堆和RSS之间有很大的区别,这是我认为我们应该关注的地方。 我们的堆似乎没有任何重大的泄漏。

现在,RSS中的内容不在堆中? 我相信C扩展和Buffers,对不对? 如果是这样,我们如何debugging。 我们还应该寻找什么?

不知道你的应用正在做什么,这是不可能的评论。

如果V8堆使用率明显低于RSS,则是的,它必须是非V8对象所使用的外部缓冲区和其他内存。

你能公开一些代码吗?