What is a Load Balancing?

system-design

Feb 10, 2025 at 17:00 pm

Load Balancing is the method of distributing network traffic efficiently between the application servers based on the number of incoming requests to avoid bottlenecks and improve performance.

blog image

As shown in the figure above, clients request for resources from servers randomly. In such cases, it might happens that requests are transmitted to only single server and rest are idle which leads to overloading of specific servers and delays in response time.

blog image

A load balancer, handles large traffic and redirects network requests from the clients to servers based on load balancing algorithms which reduces response time, and parallel processing.

What are the benefits?

  1. Availability: It directs and controls network traffic between application servers and clients efficiently.
  2. Scalability: It prevents traffic bottlenecks at any one server. Predicts application traffic which can be use to add or remove servers.
  3. Security: Monitors traffic and block malicious content. Automatically redirect attack traffic to multiple backend servers to minimize impact
  4. Performance : It distributes load evenly between servers to improve application performance.

How load balancers choose servers to redirect traffic?

Static load balancing algorithms such as round-robin algorithm, weighted round-robin algorithm, IP hash algorithm and dynamic load balancing algorithms such as least connection method, weighted least connection method, least response time method, etc are used to redirect incoming network traffic to multiple servers using load balancers.

References

  1. What is load balancing? (AWS)
  2. What is load balancing? How load balancers work? (Cloudflare)
  3. What is load balancing? (Digital Ocean)