I am using Rackspace cloud servers and trying to convince my boss that we 
should be using haproxy instead of apache at our frontend doing load balancing. 
 For the most part I have set up what I consider a fairly successful staging 
environment (I have working ACL's and cookie based routing).  The problem 
however is that when I use haproxy as my load balancer my round-trip time for a 
request goes up by about 50ms.  With apache as the proxy every request has RTT 
of ~50ms, but now they are at over 100ms.

I am using the same backend servers to test both apache and haproxy, all 
configuration rules the same as I could make them (client side keep-alive 
enabled).  Also for a comparison I also set up a quick nginx server to do its 
(very dumb) load balancing solution, and its results are at the same speed or 
better of apache.  Also, even when apache is terminating SSL and forwarding it 
on, the RTT does not go up.  All three software is running (one at a time) on 
the same virtual server, so I don't think it is that I got a bad VPS slice or 
something like that.

Also, when I use stunnel in front of haproxy to terminate https requests, it 
adds another ~50ms to the total RTT.  And if I have to make the request go 
through another stunnel to the backend (a requirement for PCI compliance), it 
adds another ~50ms again.  So now using the site with SSL is over 300ms per 
request just from the start.  That may not be *terrible* but the site is very 
interactive and calls one AJAX request per second to keep lots of things 
updated.  For general users around the internet the site is going to appear 
unresponsive and slow...

I was wondering if anyone using haproxy in a virtualized environment as ever 
experienced something like this?  Or maybe some configuration options to try to 
debug this?

-a

Reply via email to