Большие значения 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.
2 ответа
Следуя предложенному выше комментарию, я поискал на форуме Nginx, и тот же вопрос под названием "Включение поддержки активности увеличивает время запроса", опубликованный месяц назад, остался без ответа.
Это похоже на ошибку. Придется ждать исправления.
Я встречаю ту же проблему. Я использую multi_accept,, но мой инструмент для тестирования производительности -c num ниже, чем номер keepalive_request nginx ,, и я использую аргумент -k user -k для инструмента тестирования производительности одновременно. поэтому один из работников nginx примет и обработает запрос как можно больше.
Вы можете попробовать отключить multi_accept, тогда результат может быть лучше.