Welcome! Log In Create A New Profile

Advanced

Re: Nginx reload + Websockets

April 08, 2021 05:58AM
У ovh при реконекте 200к-300к websocket клиентов включается antiddos, и то
время, пока он включен к серверу не могут достучаться другие сервисы. (Пока
websocket клиенты мучают сервер подключениями - другие сервисы отваливаются
из за antiddos) Поэтому хотелось бы плавно эти websocket переподключать
как-то.

Чт, 8 апр. 2021 г. в 12:50, Илья Шипицин <chipitsine@gmail.com>:

> ну попрут и попрут. а что делать ?
>
>
> насколько я понимаю, штатно предполагается в том или ином виде
> abbrevated handshake (либо tls tickets, либо ssl sessions).
> но гибкости в управлении этой штукой нет. можно сконфигурировать
> персистентный на диске, тогда переживете релоад, но сессии будут вечные.
> безопасники обычно говорят, что лучше, чтобы при релоаде сессии и тикеты
> сбрасывались, но в этом случае вас 300к пользователей расстреляют на full
> handshake.
>
> мы замеряли, Xeon держит в районе 700-1000 хендшейков в 1 сек на 1 ядро.
> это если полные хендшейки.
>
>
> кажется, было бы совсем по хорошему, чтобы сессии переживали релоад, но
> можно было бы указать время жизни сессии. и безопасники оргазмировали бы, и
> расстрелов на релоаде бы не было.
>
> если я что-то упустил, и так настроить можно, буду рад ошибиться
>
>
> чт, 8 апр. 2021 г. в 14:45, Vl T <tolmachev.vlad@gmail.com>:
>
>> Nginx последний, 1.19.9, worker_shutdown_timeout не установлен,
>> установить его? В принципе если установить 5 минут - то через 5 минут все
>> 300к клиентов все равно попрут толпой на сервер?
>>
>> Чт, 8 апр. 2021 г. в 12:41, Илья Шипицин <chipitsine@gmail.com>:
>>
>>> сокеты штатно убиваются через worker_shutdown_timeout
>>>
>>> второй вопрос - какая у вас версия nginx ? где-то в районе 3-4 летней
>>> давности был баг, который приводил к тому, что несмотря на указанный
>>> worker_shutdown_timeout, воркеры все равно не останавливались
>>>
>>> чт, 8 апр. 2021 г. в 12:28, Vladislavik <nginx-forum@forum.nginx.org>:
>>>
>>>> Добрый день, есть 200k websocket соединений на проксируемый сервер,
>>>> после
>>>> изменения в конфиге и попытке reload nginx появляются новые процессы
>>>> nginx и
>>>> зависают прошлые в статусе "nginx shutting down", которые так и не
>>>> завершаются, тк клиенты могут висеть онлайн долго, эти старые процессы
>>>> можно
>>>> убить kill -9 pid каждый, но в этом случае nginx продолжает в
>>>> /nginx_status
>>>> показывать счетчик коннектов с учетом старых соединений из убитых
>>>> процессов
>>>> плюс заново переподключившиеся (количество коннектов после каждого
>>>> reload
>>>> растет в геометрической прогрессии), хотя в работе после kill старых
>>>> nginx
>>>> процессов остаются только новые процессы. Полностью сбросить счетчик
>>>> коннектов получается только через restart nginx, но в этом случае все
>>>> websocket клиенты одновременно начинают заново стучаться на сервер, чего
>>>> тоже не хотелось бы, вопрос: как мягко применять новый конфиг nginx и
>>>> переподключать websocket соединения хотя бы пачками, а не все одним
>>>> моментом?
>>>>
>>>> Posted at Nginx Forum:
>>>> https://forum.nginx.org/read.php?21,291167,291167#msg-291167
>>>>
>>>> _______________________________________________
>>>> nginx-ru mailing list
>>>> 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
>>
>> --
>>
>> С уважением Толмачев Владислав.
>> tolmachev.vlad@gmail.com
>> skype: vladislaviki
>> _______________________________________________
>> nginx-ru mailing list
>> 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

--

С уважением Толмачев Владислав.
tolmachev.vlad@gmail.com
skype: vladislaviki
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

Nginx reload + Websockets

Vladislavik April 08, 2021 03:28AM

Re: Nginx reload + Websockets

Илья Шипицин April 08, 2021 05:42AM

Re: Nginx reload + Websockets

Vladislavik April 08, 2021 05:46AM

Re: Nginx reload + Websockets

Илья Шипицин April 08, 2021 05:52AM

Re: Nginx reload + Websockets

Vladislavik April 08, 2021 05:58AM

Re: Nginx reload + Websockets

Илья Шипицин April 08, 2021 06:14AM

Re: Nginx reload + Websockets

Andrei Belov April 08, 2021 06:04AM

Re: Nginx reload + Websockets

Илья Шипицин April 08, 2021 06:26AM

Re: Nginx reload + Websockets

Илья Шипицин April 08, 2021 06:30AM

Re: Nginx reload + Websockets

Alex Vorona April 08, 2021 06:38AM

Re: Nginx reload + Websockets

Maxim Dounin April 08, 2021 11:40AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 163
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready