Hello,

Sorry for the long email, I know there had been many threads about keep-alive 
already, but I am a little confused by 1.4.7 configuration.txt 
(http://haproxy.1wt.eu/download/1.4/doc/configuration.txt). I'd be happy to 
improve the documentation if you help me clarify a couple of points:

1- "1.1. The HTTP transaction model" says: 
-------
HAProxy currently only supports the HTTP keep-alive mode on the client side, 
and transforms it to a close mode on the server side.
-------
I understand HAProxy sequences the incoming client requests and dispatches them 
with a "Connection: close" header to the backends, applying dispatching rules 
for every incoming request. Then "option http-server-close" seems to do exactly 
this. Is it correct to say that "option http-server-close" is HAProxy default 
behaviour? Or does HAProxy still works in a "parse first request header and 
consider everything else data" mode when this option is not set?

2- "option httpclose" documentation states:
--------
As stated in section 1, HAProxy does not yet support the HTTP keep-alive mode. 
So by default, if a client communicates with a server in this mode, it will 
only analyze, log, and process the first request of each connection.
--------
Who is right here, 1.1 or "option httpclose"? My understanding is "option 
httpclose" adds "Connection: close" header to requests from proxy to server and 
to responses from proxy to client.

3- "option forceclose" says:
--------
When this happens, it is possible to use "option forceclose". It will actively 
close the outgoing server channel as soon as the server has finished to 
respond. This option implicitly enables the "httpclose" option.
--------
Why is actively closing proxy to server connections related to closing the 
related proxy to client connection? Is it an implementation issue or by design?

4- Finally, except for resource consumptions and sometimes bad server 
behaviours (addressed by the pretend-keep-alive option), are there any other 
drawbacks to enabling client side keep-alive with "option http-server-close" 
only, other surprises? (I will probably set a 250ms http-keep-alive timeout 
too, which seems to be a good tradeof).

Thank you for any comment on these points.

--
Patrick Mézard

Reply via email to