Hello,

On Mon, Aug 30, 2010 at 03:39:14PM -0700, Ben wrote:
> i'm not sure if that works in my situation -- i am balancing database
> servers on an internal network and connection failures are
> inconvenient.  is the suggestion to use the health check to take the
> server out of circulation, at least temporarily?  in this case it is
> not load balancing as much as load limiting, correct?

Yes in part. There has been some work in the past to be able to retrieve
a server's weight from health checks, from response times and from error
rates.

The usecases which started this work have been abandonned since, so this
task got a lower priority. Also, since the initial thoughts, several very
different usecases were identified, implying that we'd want to have a very
flexible design instead of having a large set of specific features. 

One example of relatively generic solution would be to have a server
return its load in response to health checks. Haproxy could then use
that to try to balance the weights, and to raise or lower each server's
maxconn. Note that in this case, we use an indicator of activity. Other
situations will require an indicator reporting the available resources
(or idle). Some people would like to use SNMP polling, and others just
response time, within a certain range. That means that we need a way
to define how we want to convert those metrics to weights+maxconn, and
a way to retrieve them.

Right now you can already change the weights during runtime on the unix
socket, so if you have all the information centralized, you can already
have a script that does this at periodic intervals.

Regards,
Willy


Reply via email to