Можете поставить haproxy - он как раз будет держать клиента секунд 10, пока бекэнды перезагружаются. Браузеру придётся ждать эти 10 секунд, но зато он не получит 5хх ошибку.

22.05.2021 19:26, Gena Makhomed пишет:
On 21.05.2021 11:20, Evgeniy Berdnikov wrote:

nginx и php-fpm у меня находятся на одном и том же хосте,
связь между ними идет через unix domain socket по протоколу fastcgi.
...
Речь идет о перезапуске php-fpm командой "systemctl restart php-fpm"
Если делать "systemctl reload php-fpm" - это не всегра срабатывает,
иногда после релоада php-fpm оказывается в нерабочем состоянии,
поэтому использую именно "systemctl restart php-fpm" для изменения
конфигурации php-fpm, тогда и случаются 502 ошибки с сайтами.

В таком случае, может быть, сконфигурить 2 бэкенда, отличающиеся лишь
сокетами (и какими-нибудь pid-файлами), описать их в одном upstream{}
и не перезапускать php-fpm, а поднимать 2й и гасить 1й?

Да, так работает. Но поднимать на сервере два бэкенда -
это - в два раза больше работы. Поэтому очень хочется
этой лишней работы избежать и обойтись одним бэкендом.
Но скорее всего, средствами nginx этого сделать нельзя.


_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Ответить