Load Balancing Presentation
Load Balancing Presentation
Load Balancing Presentation
Contents
What is Load Balancing Load Balancer and Back-End Layer-2 Load Balancing Layer-4 Load Balancing Layer-7 Load Balancing Persistence DNS Load Balancing Database Load Balancing Load-Balancing Clusters More Software Solutions
Load balancing is a computer networking methodology to distribute workload across multiple resources to achieve
optimal resource utilization maximize throughput minimize response time avoid overload
A Load Balancer (Front-End Server) is usually used Receives computed outputs from several BackEnd Servers In Multitier architecture, terminology of designs may include
Stovepipes Bowties
Redirects traffic according to algorithm/availability/traffic but stays as a mediator between the user and the back-end servers
Server Health Checking through Ping/TCP Connect/HTTP Get Header/HTTP Get Content Custom checks can be designed too
Bonding Bond two or more links into a single, higherbandwidth logical link
MultiLayer Switch
Practically a NAT with port and transaction awareness least load fastest response times balancing requests out if one machine is not up, the router will not send traffic to it
Reverse Proxy Parse requests in application layer and distribute requests to servers based on different types of request contents LoadBalancing.org recommends HAProxy for open-source
Also KTCPVS
Persistence
When a user is directed to one server The user is kept redirected to that server Source IP Persistence
Not good for multiple access behind one IP Good for HTTP but there are famous vendors that also do RDP Cookies (HAProxy)
Cookie Based
Its DNS will not respond Quickest DNS responder will be the closest
Oracle RAC MySQL Cluster or through middle-ware like MySQL Load Balancing Proxy
Load-Balancing Clusters
Usually a group of computers connected in a LAN to make a Virtual Server More cost-effective than single computers with similar performance Some software used is
MPI Library Beowulf, distcc, and MPICH. Linux Virtual Server, Linux-HA
Apache web server's mod_proxy_balancer extension Varnish (HTTP Accelerator/Reverse Proxy) Pound (Reverse Proxy/Load Balancer) Gearman (application framework designed to distribute appropriate computer tasks to multiple computers) Redundant Firewalls with OpenBSD F5 uses FreeBSD, RedHat Cluster, Linux-HA, Ultra Monkey, Linux Virtual Server