Назад | Перейти на главную страницу

Большие значения keepalive_requests сильно замедляют работу Nginx

При запуске нагрузочного теста бекона (43-байтовый прозрачный пиксель) на Nginx мы попробовали несколько keepalive_requests значений (от 10 до 100 000), а оптимальное значение кажется 10.

Вот HTTP-заголовки этого крошечного ответа сервера:

   HTTP/1.1 200 OK
   Server: nginx/1.5.6
   Date: Wed, 23 Oct 2013 12:39:45 GMT
   Content-Type: image/gif
   Content-Length: 43
   Last-Modified: Mon, 28 Sep 1970 06:00:00 GMT
   Connection: keep-alive

Nginx в два раза медленнее с keepalive_requests 100000 чем с keepalive_requests 10.

Можете ли вы помочь понять этот результат? Или скажите, что мы делаем не так?

Для справки вот файл nginx.conf.

Следуя предложенному выше комментарию, я искал на форуме Nginx и тот же вопрос под названием «Включение поддержки активности увеличивает время запроса» и опубликованный месяц назад остался без ответа.

Похоже на ошибку. Придется ждать исправления.

Встречаюсь с той же проблемой. Я использую multi_accept ,, но в моем инструменте тестирования -c число меньше, чем число keepalive_request в nginx ,, и я использую аргумент -k с инструментом тестирования одновременно. поэтому один из воркеров nginx примет и обработает как можно больше запросов.

Можно попробовать отключить multi_accept, тогда результат может быть лучше.