如何获取正在运行的 Node.js 进程的线程转储?

Phi*_*ßen 13 profiling v8 stack-trace node.js

在 Java JVM 中,kill -3强制进程打印所有正在运行的线程的当前堆栈跟踪。我发现快速定位瓶颈非常有效。

V8 中是否有等价物?我可以让 V8 打印当前的堆栈跟踪吗?


澄清:我认为,由于节点的异步性质,它不如典型的非异步程序有用。尽管如此,如果有一种简单的方法可以访问一些堆栈跟踪,那么查看它并不需要太多时间。

根据我的经验,在您需要切换到更高级的工具之前,可以通过这种方式快速定位一些明显的瓶颈。

Adi*_*uru 2

节点已完全加载诊断,像上面这样的技巧(如果我理解正确的话)将是多余的,但请随时纠正我。

必读:NodeSource 的精彩博客1 2 3

我将尝试列出所有我发现有用的工具:

其他(刚刚用谷歌搜索过。)