Welcome! Log In Create A New Profile

Advanced

Разъяснения по работе proxy_next_upstream

Alexander Zhuravlev
May 23, 2012 04:04AM
Добрый день всем.

Не совсем уверен, что дело именно в proxy_next_upstream, поэтому
поправьте если не прав.

Проблема: есть веб-сервис (java playframework), он обрабатывает внешние
запросы и хочется умудриться рестартовать сам демон, не потеряв
пользовательские запросы. Разъясню: сам демон рестартует порядка 2
секунд. За это время на nginx поступает порядка 20-50 запросов. Хочется
сложить их в некий буфер и дождаться подъёма сервера. Да, понимаю, что
запросы будут обрабатываться не 0.1сек, а 2.1-2.5сек, но главно чтобы
они были обработаны, а не получили 502-ую. Насколько я понимаю
реализовать это можно только установкой самого себя в резервные сервера
и установкой таймаута за который демон должен рестартовать.

Накропал конфиг:

upstream local_upstream {
server 127.0.0.1:9012 fail_timeout=12s max_fails=1;
server localhost:9012 backup;
}

server {
proxy_connect_timeout 5s;
listen 80;
server_name localhost;
error_log /var/log/nginx/exporter.error.log;
proxy_next_upstream timeout;

root /opt/app/views;

location / {
proxy_pass http://local_upstream;
proxy_set_header Host $http_host;
}

Считал, что согласно proxy_next_upstream сервер будет считаться мёртвым
только по истечении времени, но что-то нифига не так :(

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

Разъяснения по работе proxy_next_upstream

Alexander Zhuravlev May 23, 2012 04:04AM

Re: Разъяснения по работе proxy_next_upstream

Андрей Василишин May 23, 2012 04:10AM

Re: Разъяснения по работе proxy_next_upstream

Maxim Dounin May 23, 2012 04:50AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 155
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