Under what scenarios, we can opt for HAproxy load balancing solution over AWS elastic load balancing?
HAProxy is a high-performance, open-source load balancer and reverse proxy for TCP and HTTP applications. Users can make use of HAProxy to improve the performance of websites and applications by distributing their workloads. Performance improvements include minimized response times and increased throughput.
By default, AWS OpsWorks Stacks configures HAProxy to handle both HTTP and HTTPS traffic. You can configure HAProxy to handle only one or the other by overriding the Chef configuration template , haproxy.
Distribute network traffic to improve application scalability. Secure your applications with integrated certificate management, user-authentication, and SSL/TLS decryption. Deliver applications with high availability and automatic scaling.
Generally you can look at deploying HAProxy when you need a more configurable LB layer.
ELB is the most cost effective solution that you will probably find on AWS, but it has issues handling large spikes of traffic (50% every 5 minutes, according to this article: http://aws.amazon.com/articles/1636185810492479). Also it doesn't play well with long connections, as any idle connection for more than 60 seconds is automatically dropped.
Another good use-case for HAProxy instead of ELB is when you want to do manipulate traffic based on incoming URLs or cookies.
If all you're looking for is a dead-simple LB solution that you can manage without hassles go for ELB. If control is what you're after, go for HAProxy.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With