21

我正在寻找一种方法来精确Node.JS 分析Linux 上的脚本执行时间。

有一些有趣的项目,比如NodeTime.com 性能分析器,但它分析的是 I/O httprequests 的时间等等,而不是代码行的执行时间

我正在寻找一种方法来确定我可以在哪里优化我的 Javascript,大部分时间都花在哪里等等。


我见过的一种有趣的方法是尝试使用 DTrace 创建一个 FlameGraph来分析 Node.JS。

但是,dtrace它是非常特定于 Solaris 的。

  • 对于 Linux (Debian/Ubuntu),dtrace可以在sytemtap-sdt-dev包中找到。但是,stap dtrace不一样,并且缺少所有相关的钩子/探针。
  • Paul Fox 从 Unix 版本做了一个移植。它的功能更完整,但不知何故,钩子/探针在用户空间中不能像 Solaris 那样工作,也不能用于分析节点。
    ftp://crisp.dyndns-server.com/pub/release/website/dtrace/(构建起来非常容易,请参阅自述文件。)
  • 还有一个Oracle端口,但没有人会推荐它。显然,它只有大约 0.1% 的探测器来自 Paul Fox 端口。(具有讽刺意味的是,因为Oracle以前是for 的Sun原作者)dtraceSolaris

在 Linux 中,如何使用终端或 Eclipse 来分析我的 Node.JS 脚本的代码?我正在寻找特定的东西,比如 Zend Profiler 显示 PHP 脚本代码中每个命令的执行时间。

4

3 回答 3

8

“look”是 Vadim 制作的一个非常好的工具,用于分析 NodeJS 应用程序。

看看这里:

https://github.com/baryshev/look

于 2013-06-20T18:43:32.353 回答
7

如果您不反对使用nodetime,它实际上确实有 CPU 分析:

见: http: //nodetime.com/blog/cpu-profiling-with-nodetime

在此处输入图像描述

于 2012-10-30T16:38:01.057 回答
1

https://www.npmjs.org/package/node.profiler 正是你需要的......它在监控模式下运行你的项目,并在你完成函数的详细信息后生成一个图表,每个函数被调用了多少次以及它在那里度过的时间。

于 2014-11-20T15:28:46.000 回答