Welcome! Log In Create A New Profile

Advanced

Question about failure and fail-over

Branden Visser
July 18, 2013 07:12AM
Hi all, I have a general question about server failure and failover
within an upstream group to ensure I understand it correctly.

Lets say I have the configuration:

proxy_next_upstream timeout;
proxy_connect_timeout 5;
....
upstream {
127.0.0.1 max_fails=3 fail_timeout=10s
127.0.0.2 max_fails=3 fail_timeout=10s
127.0.0.3 max_fails=3 fail_timeout=10s
}

And then the server 127.0.0.1 starts "hanging" indefinitely on
connection attempts.

a) Once 3 connection attempts timeout after 5 seconds on 127.0.0.1, it
will be marked down. However, during that 5 second timeout, it is
possible that 30, or N connections / requests may be in process of
timing out as well, so you may end up with 30 internal connection
failures as a result of 127.0.0.1's issue. Although they all are
retried on the next available upstream, 30 end-users noticed a 5
second hang in their request as a result of waiting for the timeout to
occur.

b) After 10 seconds, if the server is still hanging, a) basically
repeats in the same manner.

Is this correct? If I add "keepalive 64;" into the upstream block,
does the above scenario change? If a server is marked down as a result
of no new connections being able to connect, are all persistent
connections destroyed as well?

Any insight on this understanding would be appreciated.

Cheers,
Branden

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

Question about failure and fail-over

Branden Visser July 18, 2013 07:12AM

Re: Question about failure and fail-over

Maxim Dounin July 18, 2013 10:30AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

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