AWS Elastic Load Balancing (ELB) vs HAProxy: What are the differences?
AWS Elastic Load Balancing (ELB): Automatically distribute your incoming application traffic across multiple Amazon EC2 instances. With Elastic Load Balancing, you can add and remove EC2 instances as your needs change without disrupting the overall flow of information. If one EC2 instance fails, Elastic Load Balancing automatically reroutes the traffic to the remaining running EC2 instances. If the failed EC2 instance is restored, Elastic Load Balancing restores the traffic to that instance. Elastic Load Balancing offers clients a single point of contact, and it can also serve as the first line of defense against attacks on your network. You can offload the work of encryption and decryption to Elastic Load Balancing, so your servers can focus on their main task; HAProxy: The Reliable, High Performance TCP/HTTP Load Balancer. HAProxy (High Availability Proxy) is a free, very fast and reliable solution offering high availability, load balancing, and proxying for TCP and HTTP-based applications.
AWS Elastic Load Balancing (ELB) and HAProxy belong to "Load Balancer / Reverse Proxy" category of the tech stack.
"Easy" is the primary reason why developers consider AWS Elastic Load Balancing (ELB) over the competitors, whereas "Load balancer" was stated as the key factor in picking HAProxy.
9GAG, Quora, and Intuit are some of the popular companies that use AWS Elastic Load Balancing (ELB), whereas HAProxy is used by Instagram, Dropbox, and Twitter. AWS Elastic Load Balancing (ELB) has a broader approval, being mentioned in 723 company stacks & 314 developers stacks; compared to HAProxy, which is listed in 457 company stacks and 211 developer stacks.
What is AWS Elastic Load Balancing (ELB)?
What is HAProxy?
Need advice about which tool to choose?Ask the StackShare community!
Sign up to add, upvote and see more prosMake informed product decisions
What are the cons of using AWS Elastic Load Balancing (ELB)?
Sign up to get full access to all the companiesMake informed product decisions
Sign up to get full access to all the tool integrationsMake informed product decisions
We use HAProxy to load balance between our webservers. It balances TCP between the machines round robin and leaves everything else to Node.js, leaving the connections open with a reasonably long time to live to support WebSockets and re-use of a TCP connection for AJAX polling.
I use an Application Load Balancer to balance the load to the EC2 clusters of nightly.zerotoherojs.com and dojo.zerotoherojs.com.
Addditionally, ELB protects my cluster against DDOS attacks: So it is multi-birds with one stone.
HAProxy manages internal and origin load balancing using KeepaliveD. Two small servers host the entire site, never moving about 15% load even during the largest load spikes.
We use HAProxy to balance traffic at various points in our stack, includgin nginx nodes on different physical machines, and api nodes on the backend.
I use HAproxy primarily for application routing and SSL termination. I also use its logs and statistics to visualize incoming traffic in Kibana.
We use HAProxy to load balance web requests for our web application, but also for some internal load balancing of microservices.
We're progressively migrating from classic ELB to newer ALB for ssl offloading and NLB for internal load balancing.
AWS ELB is used to load balance various web and application services across multiple EC2 instances.
- Application type
- SSL free
- forwarding by rules.
- multiple target groups with only one ALB