Re: nginxQuic: медленный ответ от сервера.

Roman Arutyunyan arut на nginx.com
Пт Июл 1 13:14:27 UTC 2022


Добрый день,

> On 28 Jun 2022, at 09:01, izorkin на gmail.com wrote:
> 
> Добрый день, Роман.
> 
> Я ещё заметил одну ошибку в работе HTTP 3 протокола.
> Через очень долгое время (5-8 часов), браузер начинает отправлять запросы по HTTP 2 протоколу, вместо
> HTTP 3. Собрал debug-лог, но не смог проследить с какого момента прошло переключение. Если понадобится,
> то к вечеру смогу отправить вам логи.


Проблема появилась тогда, когда вы начали реконфигурацию nginx (послали SIGHUP).
При появлении новых воркеров ломается логика распределения квиковых соединений по воркерам.
В итоге, например, новый пакет может прийти в старый воркер, которым он будет проигнорирован.

Все бы могло относительно быстро рассосаться после череды ошибок, если бы у вас не висел один запрос с
проксировнием вебсокетов, который не давал завершиться старому воркеру.
Кроме того, похоже, у вас выключен таймаут на шатдаун воркеров.

Если у вас (свежий) Linux, то проблема с распределением квиковых клиентов по воркерам решается включением bpf-модуля.
Для этого укажите следующую директиву на верхнем уровне конфига:

  quic_bpf on;

При этом nginx должен иметь админские права (CAP_SYS_ADMIN) при запуске.

----
Roman Arutyunyan
arut на nginx.com




----------- следующая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mailman.nginx.org/pipermail/nginx-ru/attachments/20220701/303635cc/attachment.htm>


Подробная информация о списке рассылки nginx-ru