Node.js - 对另一台服务器的大量发布请求导致内存泄漏

时间:2014-11-13 13:39:19

标签: node.js http memory-leaks restify heap-dump

我有一个节点应用程序,使用restify向另一台服务器发出大量请求。

随着请求数量的增加,内存不断增长,最终应用程序崩溃。

以下是我的代码片段。

var restify = require('restify');
var client = restify.createStringClient({
    url: "https://api-3t.sandbox.paypal.com/nvp"
});

function makeRequest(cb) {
    counter++;
    client.post({
            headers: null
        }, null, function(err, req, res, data) {
            if(err)
            {
                cb(err, req, res, data);
            }
            else
            {
                cb(null, req, res, data);
            } 
    });
}

function makeRequestCb(error,request,response,data){
    counter++;
    console.log("result",counter);
}

setInterval(function(){
        makeRequest(makeRequestCb)
}, 1000);

在检查chrome中的堆快照时,我发现' buffer'占据了大部分空间。

我还尝试使用' request'模块而不是“解决”问题。 我在这做错了什么。什么占据了大部分空间?

我也检查了this帖子。但就我而言,内存使用率一直在增加。

请帮忙。

0 个答案:

没有答案