QoS policies/priorities when sharing web servers among frontends

From: Ben <ben#zouh.org>
Date: Sun, 20 Dec 2009 20:40:50 +0100

Is there a way to configure haproxy so it deals with available backends ressources (number of active connexions) as "sharable quotas", a bit like Linux IP QoS can do for traffic shaping ?

ie. do a best effort to attribute a minimum number of active cnx for a frontend when there are that much requests, but making those ressources available to other frontends when they are not in use ?

Imagine you have
- Two websites (siteA, siteB) with two different public IP addresses

If you want to reserve 160 actives connexions per server (or 3*160 cnx for the whole siteA's backend, either way) are available to serve siteA when it needs all those, and 40 guaranteed to server siteB when it needs them, can you still share the ressources when one of the site has no need for them while the other is overloaded ? (when siteB has only 10 active requests, allow siteA's backend to consumme up to 190 requests per server).

Indeed this can't be enforced in real-time (if siteA borrowed all siteB connexions and siteB experiences a suden traffic peak, siteB will have to wait for siteA current connexions to expire/close before he can regain them).

That's for shared hosting web servers, where a traffic peak on a website could suck all the backends "slots" (ie. apache childs) for hours. Received on 2009/12/20 20:40

This archive was generated by hypermail 2.2.0 : 2009/12/20 20:45 CET