502 пока перезагружается backend

Turkin Maksim neo.nix.lipetsk на gmail.com
Сб Дек 17 11:05:07 UTC 2011


Дано: Сервер с панелью управления, которая перезагружает apache через некоторые
промежутки времени, nginx в качестве frontend.

Надо: Не выдавать 502 ошибку во время перезагрузок apache.

Решение:

limit_req_zone $server_addr zone=reload:10m rate=6r/m;

server {
  location / {
    proxy_pass http://backend;
    error_page 502 = @reload;
  }
  location @reload {
    limit_req zone=reload burst=60;
    proxy_pass http://backend;
  }
}

Вопрос: Есть ли более правильный вариант решения кроме запуска еще одного
backend'а? Если нет, то можно ли сделать так или я что-то не учел?

Заранее спасибо.



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