vstas
@vstas

При выполнении полного перезапуска apache2 в связке nginx+apache2, как добавить timeout для новых соединений?

Вопрос к знатокам nginx.

Есть связка nginx + apache2
Приходиться перезагружать apache2. Причем это приходиться делать не с помощью graceful, а с остановкой и повторным запуском.

Можно ли сделать следующим образом?
Если апач выключен, то для всех новых соединений nginx пытался бы в течении секунд 15 соединиться с апачем. Если не получилось, то пусть будет Bad gateway. А если апач стал доступен то все начинает работать в прежнем режиме.

Как я все это пытался настроить.
Выключил apache, тем самым выполнил имитацию фазы остановки apache2, и начал настраивать nginx. Хотел добиться чтобы при запросе на него был некоторый timeout.

Пробовал параметр proxy_connect_timeout - Defines a timeout for establishing a connection with a proxied server.
Поставил 60s. Но все вылетает в 5xx уже через секунду. Такое ощущение, что если порт не слушается, то это даже и не является establishing? :)

proxy_read_timeout - не подходит. Тут уже должно быть успешное соединение.
proxy_send_timeout - аналогично.

Думал как-то эти параметры применить:
proxy_next_upstream
proxy_next_upstream_timeout
proxy_next_upstream_tries

Тоже не получилось. :(
Есть ли какое-то решение для nginx или может есть решение с использованием какого-то другого продукта?
  • Вопрос задан
  • 147 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы