如何在NodeJS分析中测量异步函数的完整运行时间?

tvmytwxo  于 2023-06-22  发布在  Node.js
关注(0)|答案(1)|浏览(180)

我目前正在优化一个API,它基本上是NodeJS中的一个异步函数。我最初尝试使用Chrome DevTools进行分析,但它提供的计时结果是基于执行脚本所花费的时间,而不是等待IO操作所花费的时间。
然而,我的目标是找出函数的哪些部分消耗的时间最多。为了实现这一点,我需要一种方法来测量函数的总运行时间,包括IO的等待时间。有没有一种方法可以使用Chrome DevTools来做到这一点?或者我可以用别的方法?任何建议将不胜感激。

zc0qhyus

zc0qhyus1#

我不记得我之前看到有人用这个工具的名字了。但是我发现了一些适合NodeJS的选项-
可以使用ClinicJS
https://www.npmjs.com/package/clinic
它包括三个工具:火焰诊所、泡泡教授诊所和医生诊所。Clinic Flame帮助您可视化CPU火焰图,Clinic Bubbleprof分析事件循环活动,Clinic Doctor诊断问题并根据收集的数据提供建议。
Chrome DevTools也是一个选项:
您可以使用--inspect标志启动Node.js应用程序以启用调试和分析,然后使用Chrome浏览器连接到Node.js示例进行分析。DevTools中的性能和内存面板提供了对CPU使用、内存分配和事件计时的深入了解。
这不是一个详尽的列表,还有许多其他工具。

相关问题