У меня есть очень простой код, как это:node.js HTTP запрос блокировки после 5 запросов
var http = require('http');
var options = {
hostname: 'google.com',
port: 80,
path: '/'
};
function makeRequest() {
http.get(options, function(res) {
console.log('Got response code: ', res.statusCode);
process.nextTick(makeRequest);
}).on('error', function(err) {
console.error('Got error: ', err);
throw err;
});
}
makeRequest();
и после 5 запросов, он блокирует и перестает работать. Пример вывода:
Got response code: 200
Got response code: 200
Got response code: 200
Got response code: 200
Got response code: 200
Got error: { [Error: connect ECONNREFUSED]
code: 'ECONNREFUSED',
errno: 'ECONNREFUSED',
syscall: 'connect' }
Как часто вы снимаете 'google.com'? – shennan
Ничего общего с google.com, это происходит на всех серверах - включая мой localhost – Heptic
http://nodejs.org/api/http.html#http_agent_maxsockets (возможно, с помощью 'agent: false') – Wrikken