Welcome! Log In Create A New Profile

Advanced

Re: weight and balancing in upstream proxy

Frank Liu
April 14, 2017 01:10AM
Hi Francis,

Thanks for confirming that there is no document, and any results observed
through testing or reviewing code will not be guaranteed. I guess it is
purposely undocumented so that people won't rely on one behavior and we are
free to change.

Regards,
Frank


On Thu, Apr 13, 2017 at 4:49 PM, Francis Daly <francis@daoine.org> wrote:

> 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
>
_______________________________________________
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: 106
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