ALBL: an adaptive load balancing algorithm for distributed web systems. (1st January 2014) - Kontogiannis, Sotirios; Karakos, Alexandros
This paper presents an adaptive load balancing algorithm (ALBL) for cluster-based web systems. The balancing policy is based on two criteria: HTTP process time and network delay. The former describes web server ability to process a forthcoming request, while the latter tries to estimate network conditions. Periodic criteria calculations are performed by agents at the web switch and the weight estimation process is transparent to web servers enhancing therefore distributed system's scalability. We put to test our implementation against known blind selection balancing algorithms used at web-farms such as: Round Robin, stateful ones such as Least Connections and adaptive ones such as Least Load . We also put to test performance and scalability of previous algorithms. From our testbed scenario results we show that ALBL algorithm outperforms stateless and stateful algorithms and also presents significant performance gains towards adaptive algorithms. We also show that our algorithm scales well as the number of balancing servers and web cluster's requests rate increases. We also pinpoint ALBL algorithm ability to predict network conditions and web servers load without the use of feedback information obtained by web servers but frequent service and network probes towards web servers issued by the web switch.