我有一个使用 express 和 redis 的 Node 应用程序。在我们的开发服务器上,经过一段时间的使用 node 开始使用 100% cpu。应用程序仍然响应,但顶部报告 Node 使用 100%。在 Node 重新启动之前,cpu 不会下降。
我没有将其确定为导致它的任何特定路线或功能。
诊断此问题的最佳方法是什么?
我使用 v8-profiler 查看了 node-inspector,它给出了与此处报告的相同的错误 https://github.com/dannycoates/v8-profiler/issues/10
最佳答案
您可以使用 node-tick 分析您的应用.
- 通过
sudo npm -g install tick
安装 - 使用启用的配置文件运行您的应用程序
node --prof ./app.js
- 在 CPU 使用率达到 100% 的一段时间后停止您的应用
- 您可以在您的应用目录中看到 v8.log,现在您可以使用 node-tick-processor 读取它
- 运行
node-tick-processor
并解释结果 - 将 v8.log 加载到 chrome://tracing 中以作为树进行分析。
node-tick
关于debugging - 如何调试导致 100% cpu 使用的 node.js?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10167477/