Oops, scratch that success report... dst_conn seems to apply to all connections, not just the current front-end. And it doesn't take an argument. With multiple front-ends, I'm not sure how it can be used to put a limit on only one of them.
On Wed, Feb 25, 2009 at 10:52 PM, Michael Fortson <[email protected]> wrote: > I think we're missing connslots support until the next release (3.16 > is mentioned in the archives as the first that's going to have it). > Willy must be used to having it from testing the next version :) > > switched to dst_conn and gt -- worked great. Thanks Karl! > > > > On Wed, Feb 25, 2009 at 10:47 PM, Karl Pietri <[email protected]> wrote: >> its the -gt make it just gt. >> >> this is what i ended up going with: >> >> frontend priority_rails_farm xx.xx.xx.xxx:80 >> mode http >> option forwardfor >> acl priority_full dst_conn gt 4 >> use_backend rails_farm if priority_full >> default_backend priority_rails_farm >> >> the backend priority_rails_farm has 4 servers with maxconn 1 in it. >> >> -Karl >> >> On Wed, Feb 25, 2009 at 10:38 PM, Michael Fortson <[email protected]> >> wrote: >>> >>> When trying this, I get: >>> [ALERT] 056/063556 (24031) : parsing [/etc/haproxy/haproxy.cfg:290] : >>> error detected while parsing ACL 'nearly_full'. >>> [ALERT] 056/063556 (24031) : Error reading configuration file : >>> /etc/haproxy/haproxy.cfg >>> >>> (haproxy version 1.3.15.7) >>> >>> source: >>> acl nearly_full connslots(fast_mongrels) lt 10 >>> use_backend everything if nearly_full >>> >>> also tried: >>> acl nearly_full connslots(fast_mongrels) -lt 10 >>> use_backend everything if nearly_full >>> >>> >>> hrm... >>> >>> On Sun, Feb 22, 2009 at 12:00 PM, Willy Tarreau <[email protected]> wrote: >>> > On Sun, Feb 22, 2009 at 10:03:22AM -0800, Michael Fortson wrote: >>> >> That's really cool. I've been doing it with weighting, but this is much >>> >> nicer. >>> > >>> > it was proposed and developped by someone on the list (I don't remember >>> > whom right now) for exactly this purpose. >>> > >>> >> Am I right in assuming that in this example, when nearly_full is >>> >> triggered, >>> >> it will switch entirely to that? >>> > >>> > yes, back1 will get traffic only when it's not considered full, and >>> > back2 will get the excess traffic. >>> > >>> >> how does the balance between the two >>> >> backends happen in this instance? >>> > >>> > There's no balance. The second backend only receives overloads. See >>> > that as a cheap vs expensive pool of servers (or local vs remote). >>> > >>> >> Should you just repeat the definition of >>> >> the first backend within the second to go "wide" with the server >>> >> spread? >>> > >>> > Yes, this seems appropriate depending on your workload. Maybe you'll >>> > remove "maxqueue" from the second though. >>> > >>> > Hoping this helps, >>> > Willy >>> > >>> > >> >> >

