Стресс-тестирование на TCP-сервере - PullRequest
1 голос
/ 23 марта 2012

Мы используем node.js (версия 0.6.11) в CentOS (версия 6.0) для создания TCP-сервера. Во время стресс-тестирования я обнаружил проблему:

Использование ЦП для node.js deamon составляет всего около 5 ~ 6%, когда установлено менее 1150 соединений. Но это повышается до 100% быстро, когда установлено только несколько соединений.

Кто-нибудь знает, почему это так работает? Это ошибка в node.js?

Вот демонстрационный код:

var net = require("net");
var server = net.createServer(function(socket)
{
    socket.setEncoding("utf8");
    socket.on('close',
        function()
        {
            console.log('close');
        });
    socket.on('disconnect',
        function()
        {
            console.log('disconnect');
        });
    socket.on("data", function(data)
        {
//          console.log("recv");            
        });
});

server.listen(8080, "192.168.2.105");
console.log("Server on 8080");

1 Ответ

0 голосов
/ 23 марта 2012

Попробуйте обновить до Node.js 0.6.13. Это может быть утечка памяти.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...