Hi Baptiste,

Thanks for the answer, it does help!

There have been discussions on the list about maintaining a connection pool
with backend servers for the purposes of keep-alive, are there any plans
for this in the near future? If not, can you recommend a way to handle such
behaviour outside of haproxy?

Thanks.

On 22 March 2016 at 20:44, Baptiste <bed...@gmail.com> wrote:

> On Tue, Mar 22, 2016 at 2:17 PM, Craig McLure <cr...@mclure.eu> wrote:
> > Hi,
> >
> > I'm hoping to experiment with enabling keep-alive on my service, but the
> > documentation isn't entirely clear for my use case, the general
> > implementation is as follows:
> >
> > 1) A HTTP request comes in
> > 2) A LUA script grabs the request body, does some analysis on it, and
> > injects a Cookie: header into the request
> > 3) The request goes to a backend, where the cookie is used to determine
> the
> > server the request should be dispatched too.
> >
> > This behaviour seems to work fine with the http-server-close or httpclose
> > options, but I'm not entirely sure what would happen in a keep-alive
> session
> > when the backend server switches. I've set http-reuse to 'safe'  but when
> > the second request goes to a different backend server to the first, what
> > happens to the original socket on the first server? Will it be reused by
> > other connections or does it just get dropped in a 1:1 mapping style?
> Given
> > that it's rare that two subsequent requests on a single connection will
> > arrive at the same server, is it even worth having keep-alive support on
> the
> > backends?
> >
> > Hopefully you guys can help.
> >
> > Thanks!
>
> Hi Craig,
>
> We miss the backend configuration and how you perform this persistence
> to be able to deliver you the best support.
> As far as I can tell, the persistence will have precedence over
> keep-alive connections, if that helps. So Imagine a client which did a
> first request which has been routed to server 1 where the connection
> is now established, a second request comes from this same client and
> your lua script sets a cookie to point it to server 2, then HAProxy
> will close the first connection and establish a new one on the new
> server.
>
> Baptiste
>

Reply via email to