异步分析nodejs服务器来查看代码?

时间:2015-01-29 02:19:09

标签: node.js performance optimization asynchronous profiling

我们在每天持有100k ip的nodejs服务器上遇到了性能问题。 现在我们要查看代码并找到瓶颈。 从我们现在可以看到的@jfriend00,问题似乎是数据库访问和文件访问。但是我们不知道是什么逻辑导致了这种访问。

我们仍在寻找对nodejs服务器进行异步分析的好方法。

这是我们尝试的内容

Nodetime

这在某种程度上对我们有用。它可以给行指定的代码执行时间。但是,我们无法找到错误,因为服务器工作异步,无法确定堆叠和呼叫信息。

Async-profiling

这适用于异步,据说是第一种。 问题是,我们已经将它的js代码与我们的服务器端代码集成在一起。

var AsyncProfile = require('async-profile')

AsyncProfile.profile(function () {

    ///// OUR SERVER-SIDE CODE RESIDES HERE
    setTimeout(function () {
        // doAsyncStuff
    });

});

我们只能为一个请求记录一次服务器执行的配置文件。我们可以将此代码用于forever之类的内容吗?我对此一无所知。

则dtrace

这对于我们在nodejs代码中定位问题来说太笼统了。

您对分析nodejs服务器代码有什么想法吗?任何提示或建议表示赞赏。感谢。

0 个答案:

没有答案