Re: upstream fastcgi keepalive. Таинственные 40мс
Panichev Oleg
panichev на rutarget.ru
Пт Сен 4 11:22:27 UTC 2020
В данном случае, с пустым конфигом и php-fpm, зависимости либо нет, либо
она незаметна:
keepalive 1:
Percentage of the requests served within a certain time (ms)
50% 3
66% 3
75% 41
80% 43
90% 44
95% 44
98% 44
99% 44
100% 55 (longest request)
keepalive 100:
50% 3
66% 3
75% 4
80% 42
90% 43
95% 44
98% 44
99% 45
100% 47 (longest request)
On 9/4/20 2:07 PM, Сергей Олегович wrote:
> Интересно, а есть ли зависимость между количеством keepalive и временем?
>
> пт, 4 сент. 2020 г. в 13:33, Panichev Oleg <panichev на rutarget.ru
> <mailto:panichev на rutarget.ru>>:
>
> Добрый день.
>
>
> При включении keepalive в секции upstream для fastcgi серверов
> upstream_response_time увеличивается на 40мс при нагрузке. Это
> достаточно четкий шаг, реальный ответ бэкендову нас - единицы
> миллисекунд, но nginx показывает на 40мс больше. Apache benchmark
> tool
> показывает тоже самое.
>
> С чем связана именно такая задержка? Изменения таймаутов, количества
> реквестов на эти 40мс не влияют, в логе всегда либо единицы
> миллисекунд
> (время ответа для простых соединений, без включения keepalive), либо
> сразу 40мс+время простого запроса. Есть ли способ измерять реальное
> время ответа от бэкенда при использовании keepalive?
>
> Спасибо, ниже конфиги и результаты ab.
>
>
> ===========================================================
>
> Пробовал на свежем нджинксе и стартовой странице php-fpm:
>
> Проверка с keepalive:
>
> upstream sync {
> server localhost:9000;
> keepalive 8;
> }
>
> ..
>
> location ~ \.php$ {
> fastcgi_pass sync;
> fastcgi_keep_conn on;
> ...
>
> Percentage of the requests served within a certain time (ms)
> 50% 3
> 66% 3
> 75% 4
> 80% 42
> 90% 43
> 95% 44
> 98% 44
> 99% 45
> 100% 52 (longest request)
> ==========================
>
> Без keepalive тот же апстрим:
>
> Percentage of the requests served within a certain time (ms)
> 50% 1
> 66% 1
> 75% 1
> 80% 1
> 90% 1
> 95% 2
> 98% 2
> 99% 3
> 100% 7 (longest request)
>
> Это повторяется на разных приложениях и разных фронтендах (см.
> скриншот)
>
>
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru на nginx.org <mailto:nginx-ru на nginx.org>
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru на nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mailman.nginx.org/pipermail/nginx-ru/attachments/20200904/77fb532f/attachment.htm>
Подробная информация о списке рассылки nginx-ru