A high-availability webserver cluster using multiple front-ends

  • Authors:
  • Jongbae Moon;Yongyoon Cho

  • Affiliations:
  • Department of Computing, Soongsil University, Seoul, Korea;Department of Computing, Soongsil University, Seoul, Korea

  • Venue:
  • CIS'04 Proceedings of the First international conference on Computational and Information Science
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

A lot of clustering technologies are being applied to websites these days. A webserver cluster can be configured with either a high performance hardware switch or LVS (Linux Virtual Server) software. A high performance hardware switch has good performance but costs a great deal when constructing small and middle-sized websites. LVS, which is free of charge and has good performance, has commonly been used to construct webserver clusters. LVS is hampered by having a single front-end as it can raise a bottleneck with increased requests, and can result in the cluster system being unable to function. In this paper, we suggest new architecture for webserver clusters based on LVS with multiple front-ends which can also act as back-ends. This architecture removes the bottleneck, and is useful in constructing small and middle-sized websites. We also propose a scheduling algorithm to distribute requests equally to servers by considering their load. With this scheduling algorithm, a server will be able to respond directly to a client's request when its load is not too large. Otherwise, the server will redirect the request to the selected back-end with the lowest load. Through our experiments, we show that a webserver cluster with multiple front-ends increases the throughput linearly, while a webserver cluster with a single front-end increases the throughput curvedly. We hope that a webserver cluster with multiple front-ends will be suitable and efficient for constructing small and middle-sized websites in terms of cost and performance.