Home » Computer Architecture

Load Balancing and Its Types

In this article, we are going to discuss what load balancing is, what are the types of load balancing and we will discuss the different algorithms of static load balancing in brief.
Submitted by Uma Dasgupta, on March 08, 2020

Load balancing

Let us first know what load balancing is?

So, Load balancing is a methodology in computer to distribute the workloads among multiple processors, for maintaining high availability, high reliability, high scalability and case of maintenance in resource sharing.

Techniques of load balancing:

  1. Push Migration:
    Overloaded processors in one CPU is pushed to another processor for processing.
  2. Pull Migration:
    The processor which is overloaded is pulled from a processor and it is put under another processor for processing.

Types of Load balancing

Mainly there are two types of load balancing i.e. Static load balancing and Dynamic load balancing.

i) Static load balancing

The static load balancing method is non-primitive one the load is allocated to the node it cannot be transferred to another node under processing.

The main drawback it does not take the current state of the system while making allocation decisions.

There are different algorithms of static load balancing such as:

  1. Round Robin algorithm
  2. Central Manager algorithm
  3. Threshold algorithm
  4. Randomized algorithm

ii) Dynamic load balancing

In dynamic load balancing the changes on the system's workload are monitored and redistributed accordingly.

There are several algorithms of Dynamic load balancing also, but in this article, we will only discuss the different algorithms of static load balancing.

Round Robin Algorithm

In this algorithm, the load is distributed evenly to all nodes or processors. The workload is distributed in a round-robin order. Where the equal load is assigned to each node in circular order without any priority and will be back to the first node if the last node has been reached.

Advantages and disadvantages:

  • Round robin is easy to implement, simple and starvation.
  • It does not require inter-process communication and still gives the best performance but it cannot give expected result when the jobs are unequal processing time.

Central Manager Algorithm

In this algorithm, a central node selects the slave node for transferring the load.

Slave node having the least load is selected and assigned the jobs.

Advantages and disadvantages:

  • The algorithm needs a high level of interprocess communication which can sometimes lead to the bottleneck state.
  • This algorithm performs better than dynamic activities are created by every host.

Threshold Algorithm

According to this, the load is assigned immediately upon the creation of the node. The load is characterized in 3 labels: Under load, medium loaded and overloaded.

Two terms or we can say parameters are used to describe these three levels:

  1. Underloaded → load < Tunder
  2. Medium → Tunder <= Load <= Tupper
  3. Overloaded → Load >Tupper

Advantages and disadvantages:

  • This algorithm has low intercrosses communication and reduces the overhead of remote process allocation which leads to improvement in performance.
  • The complexity of comparing each node to with some specified threshold is high.

Randomized Algorithm

The load is selected on random selection without having information about the current or previous load on the node.

Advantage and disadvantage:

  • Each node maintains its load record. Hence no interprocess communication is required.

Conclusion:

In the above article, we have discussed the different types of load balancing and have also discussed several algorithms of static load balancing. I hope you have understood the article well, for any further queries hit your queries in the comment section.



Comments and Discussions!

Load comments ↻





Copyright © 2024 www.includehelp.com. All rights reserved.