**1. Introduction**

The performance of any web server has been affected by the web traffic usually, and the web server makes a slow response because it gets overloaded. Due to the increased traffic over the Internet, a web server faces challenges to serve the large number of users with high-speed availability. Therefore, the concept of resource confederation comes in existence. The popular Google web server works on the same concept. It distributes the user's query in different web servers which are geographically distributed at various locations. The web server requires several mechanisms to deal with linked open data (LOD) to fulfill the user's request [1, 2]. Load balancing plays a vital role in the operation of distributed and parallel computing. It partitioned the incoming workload into smaller tasks that are assigned to computational resources for concurrent execution. The load may be CPU capacity, memory size, network load, delay, etc. The reason behind load balancing is to handle requests of multiple users without degrading the performance of web server. Load balancer receives requests from user, determines the load on available

resources, and sends request to the server which is lightly loaded. The major functions of load balancer are as follows:


The load balancing algorithm (LBA) exists based on current state of the system as shown in **Figure 1**. Static algorithms require prior information about the system characteristics such as processing capability, memory, number of active connections etc., while DLB algorithms use current status of the system to make scheduling decisions.

Load balancing significantly improves global system performance in terms of throughput and resource utilization. The several reasons to use LBAs are as follows: cost optimization, fault tolerance ability, system adaptability and extensibility, decreased response time, idle time of resources, increased throughput, reliability, and prevents starvation [3, 4].

To incorporate these benefits, it is important to select the suitable load balancing algorithm (LBA) for web resources in distributed environment [5, 6]. Based on a process characteristic, LBAs can be categorized in three categories as shown in **Figure 2**. Both sender-initiated and receiver-initiated algorithms use different

**Figure 1.** *Classification based on System state.*

**63**

**Figure 5.**

**Figure 3.**

**Figure 4.**

*Stateless static load balancing.*

*Stateful static load balancing.*

*Static load balancing.*

*Analysis of Effective Load Balancing Techniques in Distributed Environment*

can be submitted to any processing element using two methods:

transfer and location policies for implementing load balancing. Symmetric-initiated algorithms eliminate the preemption condition of receiver-initiated algorithm and offer two algorithms: above-average algorithm and adaptive algorithm. Above-average algorithm uses an acceptable range for deciding whether a node is sender-initiated or

Static load balancing approaches use the prior information of tasks, computing resources or processing element, and network detail as shown in **Figure 3**. The task

In stateless method, selection of a processing element (PE) is done without having any awareness of the system environment, while in a state-based method, selecting a PE requires information of the system condition [7]. Stateless methods are simple to implement, but it provides one-to-one interaction between the client

**Figure 5** represents the stateful load balancing method; the load balancer keeps track for all the sessions, and decisions are taken based on server load. Various stateless techniques exist for selecting the processing element such as RR-LBA, weighted

*DOI: http://dx.doi.org/10.5772/intechopen.91460*

receiver-initiated.

**1.1 Static load balancing**

• Stateless method

• State-based method

and server at a time as shown in **Figure 4**.

**Figure 2.** *Classification based on Process Origination.*
