Load Balancing
August 10, 2009 – 2:27 amLoad balancing is a technique to distribute work between two or more servers, network links, CPUs, hard drives, or other resources in order to get optimal resource utilization, maximize output, and reduce response time. These days this techniques is being used extensively for web application to provide better experience to user.
In Web load balancing is the process by which inbound internet protocol (IP) traffic can be distributed across multiple servers to enhance the performance of the servers, leads to their optimal utilization and ensures that no single server is overwhelmed. Load balancing is specifically vital for busy networks (with huge traffic), where it is difficult to approximate the number of requests that will be issued to a server. Two or more web serves are employed in a load balancing scheme. If one of the servers begins to get overloaded, the requests are forwarded to another server. Service time is reduced by using a load balancer to identify which server has the appropriate availability to receive the traffic.
The process is vary simple and straightforward. A user’s request for a webpage request is sent to the load balancer, which forwards the request to one of the servers. That server responds back to the load balancer, which in turn sends the response on to the end user.
Load balancing keeps the application/service alive even in the face of server down time due to server failure or maintenance. If you are load balancing across several servers and one of the servers fails, your service will still be available to your users, as the traffic will be diverted to the other servers in your server farm.
There are several types of load balancing techniques.
- Round Robin DNS Load Balancing: The in-built round-robin feature of BIND of a DNS server can be used to load balance multiple web servers.
- Hardware Load Balancing: Hardware load balancers can route TCP/IP packets to various servers in a cluster.
- Software Load Balancing: Most commonly used load balancers are software based, and often comes as an integrated component of expensive web server and application server software packages.


