Время ответа Node.js>= 200 мс?

Я работаю над тестом рабочей нагрузки Node.js и столкнулся с интересным поведением. Минимальное время ответа HTTP-сервера составляет 200 мс, даже для самой простой логики:

var http = require("http");

http.createServer(function(request, response) { 

  response.write("Hello World");
  response.end();

}).listen(8080);

Работал на Windows Server 2003:

> node main.js

Я искал в Интернете, но не нашел никакой информации об этом. Тест проводится в локальной сети, кроме того, с использованием другого веб-сервера (а именно IIS) я могу добиться мгновенного времени отклика. Не поймите меня неправильно, я вижу рациональное объяснение этому поведению, так что это мой вопрос:

Это поведение по умолчанию для узла node.js или оно может быть результатом чего-то другого?

Пояснение по запросу:

  • Node js версия: 0.6.11
  • ОС: Windows Server 2003 R2 SP2
  • Серверная среда: VMWare Workstation 8.0.0
  • Утилита рабочей нагрузки: jMeter 2.6 (рабочая нагрузка 1 потока)

Обновить

Поведение задержки появляется только во время удаленных запросов. Если выполняется локальный тест рабочей нагрузки, задержка будет близка к нулю. Однако это не может быть проблемой с задержкой в ​​сети, поскольку удаленный запрос к IIS на том же сервере не дает задержки. Я собираюсь попробовать это на других ОС.

3 ответа

Решение

Это алгоритм Nagle, установленный по умолчанию в Windows (воспроизводимый также в Windows 2008 R2 в Azure).

Обходной путь - отключите его в ответном сокете, например так:

response.connection.setNoDelay(true);

Получение задержки 5 мс, загрузка 3 мс в общей сложности 8 мс здесь. Это варьируется, но самое высокое, что я видел, составляет около 14 мс.

Работал на OS X 10.7.3, хотя. Придется попробовать на винде и посмотреть.

Я использую Ubuntu 64bit и узел версии 0.6.10, и самое большее я получаю задержку в 20 мс. Я считаю, что это проблема окон, так как Node все еще не совершенен для окон, придется ждать большей стабильности. Я предлагаю вам опубликовать свои проблемы в списке рассылки.

Другие вопросы по тегам