Welcome! Log In Create A New Profile

Advanced

Re: weight and balancing in upstream proxy

Francis Daly
April 13, 2017 07:50PM
On Wed, Apr 12, 2017 at 02:50:08PM -0700, Frank Liu wrote:

Hi there,

> How does nginx balances traffic to upstream with different weight? If I
> have 3 servers in upstream, with weight 1, 2, 4, assuming all are healthy,
> will nginx send traffic to server 1, 2, 3, 2, 3, 3, 3 or 1, 2, 2, 3, 3, 3,
> 3?

If you want to know what your current nginx version does, it should not
be too difficult to test:

One nginx.conf. One http section. One upstream{} listing multiple
ip:ports. One server{} which proxy_pass:es to that upstream. Multiple
server{}s, each of which listens on one ip:port, writes to a different
access_log, and does something like "return 200 ok;".

Then for increasing numbers X, "GET /X" on the main server. Look at
the individual access log files to see which server handled /1, which
handled /2, etc. By the time you get to 700, you'll either see that
there is a reliably repeating pattern, or you'll see that it is probably
randomish.


If you actually care about what pattern is used; or if you want to
guarantee that the same pattern will be used in future nginx versions;
then get your preferred code written and use that instead of whatever
nginx uses.


If you want to know what guarantee there is that the behaviour will not
change in the future: I'd say "none", except that there is a good chance
that what is written in the documentation will be honoured. Paraphrasing
that, for the above case: for 7 requests, 1 will go to the first server;
2 to the second; and 4 to the third.

> If I have two servers with both weight 50, will nginx will 50 requests
> to server 1, and then 50 to server 2, or will it calculate the ration to be
> 1:1 and send one after another?

Same answer: it does not seem to difficult to test, if you don't want
to read the available source.

Good luck with it!

f
--
Francis Daly francis@daoine.org
_______________________________________________
nginx mailing list
nginx@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx
Subject Author Posted

weight and balancing in upstream proxy

Frank Liu April 12, 2017 05:52PM

Re: weight and balancing in upstream proxy

B.R. via nginx April 13, 2017 04:12AM

Re: weight and balancing in upstream proxy

Maxim Dounin April 13, 2017 10:36AM

Re: weight and balancing in upstream proxy

Frank Liu April 13, 2017 07:10PM

Re: weight and balancing in upstream proxy

B.R. via nginx April 14, 2017 03:16AM

Re: weight and balancing in upstream proxy

Francis Daly April 13, 2017 07:50PM

Re: weight and balancing in upstream proxy

Frank Liu April 14, 2017 01:10AM

Re: weight and balancing in upstream proxy

Francis Daly April 14, 2017 03:36AM

Re: weight and balancing in upstream proxy

Aleksandar Lazic April 14, 2017 04:48AM

Re: weight and balancing in upstream proxy

Frank Liu April 14, 2017 04:04PM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

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