我正在运行一个Node.JS web应用程序,它可以正常工作几个小时,然后在某个随机的时间点上,V8堆突然开始无原因地快速增长,大约40分钟后,这种增长通常停止,进程继续正常运行。
我正在用点时间监视这件事:


这可能是什么原因?这是我程序中的内存泄漏,还是V8中的一个bug?
发布于 2014-03-27 18:13:27
您所提供的内容无法知道问题所在,但是您的代码中有99.99%的问题是可以解决的。
我找到的调试Node.js内存问题的最佳工具是https://github.com/bnoordhuis/node-heapdump,您可以将其设置为转储某个时间间隔,或者默认情况下它会监听USR2信号,因此您可以将kill -s USR2发送到进程的pid并获取快照。
然后,您可以使用Chrome检查器将堆加载到它的分析工具中,并开始检查。
我通常会发现,这些问题存在的时间太长了。
https://stackoverflow.com/questions/22695249
复制相似问题