Load Balancer
A load balancer is a device that acts as a reverse proxy and distributes network or application traffic
across a number of servers. Load balancers are used to increase capacity (concurrent users) and
reliability of applications. They improve the overall performance of applications by decreasing the
burden on servers associated with managing and maintaining application and network sessions, as
well as by performing applicationspecific tasks.
Load balancers are generally grouped into two categories: Layer 4 and Layer 7. Layer 4 load
balancers act upon data found in network and transport layer protocols (IP, TCP, FTP, UDP). Layer
7 load balancers distribute requests based upon data found in application layer protocols such as
HTTP.
Requests are received by both types of load balancers and they are distributed to a particular server
based on a configured algorithm. Some industry standard algorithms are:
Round robin
Weighted round robin
Least connections
Least response time
Layer 7 load balancers can further distribute requests based on application specific data such as
HTTP headers, cookies, or data within the application message itself, such as the value of a specific
parameter.
Load balancers ensure reliability and availability by monitoring the "health" of applications and
only sending requests to servers and applications that can respond in a timely manner.