HAproxy is a fast, efficient and stable load balancer TCP/HTTP, commonly used to improve the performance of web sites and services by spreading requests across multiple servers.
Mohamed Imran, COO of E2E Networks with experience in scaling up some major web properties in India, presented this talk at Rootconf' 2014. See the full talk at http://www.youtube.com/watch?v=_gxynQc8dt8
Let's talk more about your infrastructure scaling or load balancing needs at sales@e2enetworks.com
1. HAproxyHAproxy
Scale Anything with HAproxyScale Anything with HAproxy
Why, how and moreWhy, how and more
ByBy
Mohamed ImranMohamed Imran
COO, E2E NetworksCOO, E2E Networks
http://e2enetworks.com/http://e2enetworks.com/
4. Deployment ScenariosDeployment Scenarios
HAproxy
Web Server 1 Web Server 2
HTTP modeHTTP mode
URL check to find out ifURL check to find out if
backend is respondingbackend is responding
Up /down steps can beUp /down steps can be
defineddefined
X-forwarding supportX-forwarding support
Keep-Alive supportKeep-Alive support
Logs in apache formatLogs in apache format
5. SSL TerminationSSL Termination
Incoming https
HAproxy
We can convert anyWe can convert any
http service intohttp service into
httpshttps
Env flags can be sentEnv flags can be sent
to backend toto backend to
identify an SSLidentify an SSL
connectionconnection
SSL
Backend http servers
6. Deployment ScenariosDeployment Scenarios
HAproxy
MySQL Slave
1
MySQL Slave
2
TCP ModeTCP Mode
Health checks to find out ifHealth checks to find out if
DB is respondingDB is responding
Simple load-balancingSimple load-balancing
ratios to scale any no ofratios to scale any no of
backend serversbackend servers
7. Shared nothing architectureShared nothing architecture
Lsync daemonLsync daemon
can be setup to sync code files between 1 to multiplecan be setup to sync code files between 1 to multiple
serversservers
Uploads can be controlled and done in only oneUploads can be controlled and done in only one
single server and further percolation of filessingle server and further percolation of files
happen over lsynchappen over lsync
All Special URLs/Uploads are sent to a primaryAll Special URLs/Uploads are sent to a primary
server while rest of the URLs are load-balancedserver while rest of the URLs are load-balanced