Why use haproxy now ?

Richard Kearsley rkearsley at blueyonder.co.uk
Thu Mar 28 12:26:50 UTC 2013

I actually did some quite in-depth comparison with splice() sys call 
(only available on linux btw), between nginx and haproxy, and even wrote 
a small standalone proxy server that uses it
There was some improvement, but not on the scale that would make it a 
deciding factor
The thing that makes most difference to forwarding is your network card, 
and if it supports LRO (large receive offload) - if you're using a 10G 
lan card, it probably has it, anything less probably doesn't

I've attached my results, the test was proxying a file a certain amount 
of times, and I would log how much cpu time was used (ab -n 1000 -c 10

RTL = onboard realtek (they are crap)
INTEL = intel 1000CT ($30 thing)
LIN = Linux (3.6.something)
BSD = FreeBSD 9.0
HA = Haproxy (latest 1.5 dev version at the time)
NGX = Nginx 1.3.something
PS = splice() proxy that I wrote
SPL/BUF/OFF = mode either splice, buffer or off/on (nginx proxy_buffering)

Afterwards I got some 10G cards to test and it was (by probably 80-90%) 
faster at all tests

On 28/03/13 11:57, Lukas Tribus wrote:
> Because nginx doesn't do tcp splicing. Is my assumption wrong; are you able to
> forward 20Gbps with nginx? Then yes, probably you have huge hardware, which isn't
> necessary with haproxy.
> _______________________________________________
> nginx mailing list
> nginx at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx

-------------- next part --------------
A non-text attachment was scrubbed...
Name: graph.png
Type: image/png
Size: 57537 bytes
Desc: not available
URL: <http://mailman.nginx.org/pipermail/nginx/attachments/20130328/919d0bc8/attachment-0001.png>

More information about the nginx mailing list