On Nov 14, 2012, at 5:19 PM, Ask Bjørn Hansen <a...@develooper.com> wrote:

> 
> On Nov 14, 2012, at 11:01, Tim Bannister <is...@jellybaby.net> wrote:
> 
>>> I really like how Perlbal does it:
>>> 
>>> It opens a connection when it thinks it needs more and issues a (by 
>>> default, it's configurable) "OPTIONS *" request and only after getting a 
>>> successful response to the test will it send real requests on that 
>>> connection (and then it will keep the connection open with Keep-Alive for 
>>> further requests).
>> 
>> X-Server-Load: would still be an improvement, eg with this response to 
>> OPTIONS:
>> HTTP/1.1 200 OK
>> Date: Wed, 14 Nov 2012 19:00:00 GMT
>> Server: Apache/2.5.x
>> X-Server-Load: 0.999
>> 
>> …the balancer might decide to use a backend that is reporting a lower load.
> 
> I know I am fighting the tide here, but it's really the wrong smarts to put 
> in the load balancer.
> 
> The backend should/can know if it can take more requests.  When it can't it 
> shouldn't and the load balancer shouldn't pass that back to the end-user but 
> rather just find another available server or hold on to the request until one 
> becomes available (or some timeout value is met if things are that bad).
> 

Without a doubt, I agree that the load info should not be passed
back to the end user (I state as much in the blog).

Reply via email to