Print this page
Published in News

HAProxy's load balancer handles 2.04 million requests per second

by on22 April 2021


All using a single ARM Neoverse

HAProxy has announced that its HAProxy 2.3 tested on a single ARM Neoverse has achieved 2.04 million requests per second and is citing it as proof that its load balancer can scale on  powerful servers with significant network bandwidth, and run on much more modest hardware while still achieving excellent results.

Community Project Lead & CTO at HAProxy Technologies Willy Tarreau said that the move the company made four years ago into multithreading four years ago when everyone was obsessed with multi-core CPUs was the right one.

"It now performs better than ever without all the functional limitations that once were imposed by a multi-process architecture. I'm even happier to completely remove support for this obsolete model in 2.5”, he said.

ARM is also jolly pleased and is citing the solution as a way of tackling infrastructure power and efficiency demands which are being bought in with increasing and diverse workloads.

Bhumik Patel, Director of Ecosystem Software Development, Infrastructure Line of Business, ARM said: “The performance and scale numbers from HAProxy are a testament to the benefits solution providers can achieve when combining best-in-class performance of ARM Neoverse-based cloud instances with one of the fastest and widely-used software load-balancers in the market.”

Wanting to see how HAProxy would scale in a high-performance environment, Willy Tarreau, Community Project Lead & CTO at HAProxy Technologies, accessed some of AWS's new Arm Neoverse-based Graviton2-powered instances, which provide up to 64 cores. Each core uses its own L2 cache and there's a single L3 cache shared by all cores. In addition, Tarreau switched to the new Armv8.1-A Large System Extensions (LSE) atomic instructions, which totally unlocked the true power of these machines. This environment gave him the opportunity to push the HAProxy benchmarks to the next level.

HAProxy's performance peaked at 2.04 to 2.05 million requests per second. The direct communication from the client to the server shows 160 microseconds response time while adding HAProxy increases it to 560. So, HAProxy adds at most 400 microseconds on average—less than half a millisecond.

At that point, however, the machine is totally saturated and due to this, HAProxy is measuring the effect of queuing at every stage in the chain (network buffers and HAProxy).

The company said that preliminary tests on the forthcoming HAProxy 2.4 release show very promising results with even higher rates and lower traversal times.

 

Last modified on 22 April 2021
Rate this item
(0 votes)