HAProxy has a similar feature called agent-check ( https://cbonte.github.io/haproxy-dconv/1.8/configuration.html#5.2-agent-check) although in their case, the backend server specifies it's own weight. Either way - whether the frontend or backend determines the weight - it would be useful.
- Y Sent from a device with a very small keyboard and hyperactive autocorrect. On Tue, Oct 30, 2018, 8:53 AM Jim Jagielski <[email protected]> wrote: > As some of you know, one of my passions and area of focus is > on the use of Apache httpd as a reverse proxy and, as such, load > balancing, failover, etc are of vital interest to me. > > One topic which I have mulling over, off and on, has been the > idea of some sort of universal load number, that could be used > and agreed upon by web servers. Right now, the reverse proxy > "guesses" the load on the backend servers which is OK, and > works well enough, but it would be great if it actually "knew" > the current loads on those servers. I already have code that > shares basic architectural info, such as number of CPUs, available > memory, loadavg, etc which can help, of course, but again, all > this info can be used to *infer* the current status of those backend > servers; it doesn't really provide what the current load actually > *is*. > > So I was thinking maybe some sort of small, simple and "fast" > benchmark which could be run by the backends as part of their > "status" update to the front-end reverse proxy server... something > that shows general capability at that point in time, like Hanoi or > something similar. Or maybe some hash function. Some simple code > that could be used to create that "universal" load number. > > Thoughts? Ideas? Comments? Suggestions? :) > On Oct 30, 2018 8:53 AM, "Jim Jagielski" <[email protected]> wrote: As some of you know, one of my passions and area of focus is on the use of Apache httpd as a reverse proxy and, as such, load balancing, failover, etc are of vital interest to me. One topic which I have mulling over, off and on, has been the idea of some sort of universal load number, that could be used and agreed upon by web servers. Right now, the reverse proxy "guesses" the load on the backend servers which is OK, and works well enough, but it would be great if it actually "knew" the current loads on those servers. I already have code that shares basic architectural info, such as number of CPUs, available memory, loadavg, etc which can help, of course, but again, all this info can be used to *infer* the current status of those backend servers; it doesn't really provide what the current load actually *is*. So I was thinking maybe some sort of small, simple and "fast" benchmark which could be run by the backends as part of their "status" update to the front-end reverse proxy server... something that shows general capability at that point in time, like Hanoi or something similar. Or maybe some hash function. Some simple code that could be used to create that "universal" load number. Thoughts? Ideas? Comments? Suggestions? :)
