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 application-specific 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.
Some of the methods of distributing loads includes
Weighted round robin
Least response time
LAYER 7 SWITCHING
Layer 7 switching takes its name from the OSI model, indicating that the device switches requests based on layer 7 (application) data. Layer 7 switching is also known as “request switching”, “application switching”, and “content based routing”.
Unlike load balancing, layer 7 switching does not require that all servers in the pool (farm/cluster) have the same content. In fact, layer 7 switching expects that servers will have different content, thus the need to more deeply inspect requests before determining where they should be directed. Layer 7 switches are capable of directing requests based on URI, host, HTTP headers, and anything in the application message.
Layer 7 Switching + Load Balancing = Layer 7 Load Balancing
Layer 7 load balancing also allows for increased efficiency of the application infrastructure. For example, only two highly tuned image servers may be required to meet application performance and user concurrency needs, while three or four optimized servers may be necessary to meet the same requirements for PHP or ASP scripting services. Being able to separate out content based on type, URI, or data allows for better allocation of physical resources in the application infrastructure.
F5 brings their load balancing Technology into availability for your applications need of consistent accessibility and to costly downtime and lost productivity. In As described “F5 technology gives you the power and flexibility to set availability priorities based on requirements such as security, uptime, reliability, and performance”. http://www.f5.com/solutions/availability/. below are the 3 Availability solutions described.
- Global Load Balancing
- Local Load Balancing
- Link Load Balancing
Check devcentral also for some related information http://devcentral.f5.com/weblogs/macvittie/archive/2008/08/12/3529.aspx
Some of the Supported Load Balancing Methods include (http://loadbalancer.org/):
- Direct Routing (DR)
- Network Address Translation (NAT)
- Source Network Address Translation (SNAT)
Just a Resourceful information you would say….