Abstract
The growth of web-based applications in business and e-commerce is building up demands for high performance web servers for better throughputs and lower user-perceived latency. These demands are leading to a widespread substitution of powerful single servers by robust newcomers, cluster web servers, in many enterprise companies. In this respect the load-balancing algorithms play an important role in boosting the performance of cluster servers. The previous load-balancing algorithms which were designed for the handling of static contents in web services suffer from significant performance degradation under dynamic and database-driven workloads. Regarding this, we propose an approximation-based load-balancing algorithm with admission control for cluster-based web servers in this study. Since it is difficult to accurately determine the loads of web servers through feedbacks from distributed agents in web servers, we propose an analytical model of a web server to estimate the web servers’ loads. To achieve this, the algorithm classifies requests based on their service times and track numbers of outstanding requests for each class of each web server node and also based on their resource demands to dynamically estimate the loads of each node. For the error handling of the model a proportional integral (PI) controller from control theory is used. Then the estimated available capacity of each web server is used for load balancing and admission control decisions. The implementation results with a standard benchmark confirm the effectiveness of the proposed scheme, which improves both the mean response time and the throughput of the cluster compared to rival load-balancing algorithms, and also avoids situations in which the cluster is overloaded, even when the request rates are beyond the cluster capacity.
Similar content being viewed by others
References
Abdelzaher T, Shin KG, Bhatti N (2002) Performance guarantees for web server and systems: a control theoretical approach. IEEE Trans Parallel Distrib Syst 13(1):80–96
Andreolini M, Casalicchio E (2004) A cluster-based web system providing differentiated and guaranteed services. Clust Comput 7:7–19
Andreolini M, Casolari S (2006) A distributed architecture for gracefully degradable Web-based services. In: Proc of IEEE international symposium on network computing and applications (NCA2006), Cambridge, MA, July 2006
Andreolini M, Colajanni M, Morselli R (2002) Performance study of dispatching algorithms in multi-tier web architectures. ACM SIGMETRICS Perf Eval Rev 30(2):10–20
Andreolini M, Colajanni M, Nuccio M (2003) Scalability of content-aware server switches for cluster-based web information systems. In: Proc IEEE world wide web conf, 2003
Apache (2009) http://www.apache.org
BEA Systems (2009) BEA Weblogic. http://www.bea.com/weblogic
Cardellini V, Casalicchio E, Colajanni M, Mambelli M (2001) Web Switch Support for Differentiated Services. ACM SIGMETRICS Perform Eval Rev (29), 2001
Cardellini V, Casalicchio E, Colajanni M, Tucci S (2001) Mechanisms for quality of service in web clusters. Comput Netw 17:761–771
Cardellini V, Casalicchio E, Colajanni M, Yu PS (2002) The state of the art in locally distributed web-server systems. ACM Comput Surv (CSUR) 31:263–311
Cardellini V, Colajanni M, Yu P (2003) Request redirection algorithms for distributed web systems. IEEE Trans Parallel Distrib Syst (14), 2003
Casalicchio E, Tucci S (2001) Static and dynamic scheduling algorithms for scalable web server farm. In: Proc Euromicro workshop on parallel and distrib proc, 2001, pp 199–176
Casalicchio E, Cardellini V, Colajanni M (2002) Client-aware dispatching algorithms for cluster-based web servers. Clust Comput 5(1):65–74
Casalicchio E, Cardellini V, Colajanni M (2002) Content-aware dispatching algorithms for cluster-based web servers. Clust Comput 5:65–74
Challenger J, Dantzig P, Iyengar A, Squillante M, Zhang L (2004) Efficiently serving dynamic data at highly accessed web sites. IEEE/ACM Trans Netw 12:223–233
Chandra A, Pradhan P, Tewari R, Sahu S, Shenoy P (2006) An observation-based approach towards self-managing web servers. Comput Commun 29:1174–1188
Chen L, Lu Y, Abdelzaher TF (2006) Feedback control architecture and design methodology for service delay guarantees in web servers. IEEE Parallel Distrib Syst 17:1014–1027
Cherkasova L, Phaal P (2002) Session-based admission control: a mechanism for peak load management of commercial web sites. IEEE Trans Comput 51(6)
Cockcroft A, Walker B (2001) Capacity planning for Internet services. SUN Press, Cleveland
Dahlin M (2000) Interpreting stale load information. IEEE Trans Parallel Distrib Syst 11(10):1033–1047
Denning PJ, Buzen JP (1978) The operational analysis of queueing network models. ACM Comput Surv (CSUR) 10(3):225–261
Dinda D, Ohailaron D (2000) Host load prediction using linear models. Clust Comput 3(4):265–280
eBay (2009) http://www.ebay.com/
Floyd S, Jacobson V (1993) Random early detection gateways for congestion avoidance. IEEE/ACM Trans Netw 1(4):397–413
Hong YS, No JH, Kim SY (2006) DNS-based load-balancing in distributed web-server systems. In: Fourth IEEE workshop on software technologies for future embedded and ubiquitous systems (WCCIA 2006), p 4
Kamra A, Misra V, Nahum EM (2004) Yaksha: a self-tuning controller for managing the performance of 3-tiered web sites. In: 12th IEEE international workshop on quality of service, IWQOS 2004, pp 47–56
Lee HK, Vageesan G, Yum KH, Kim EJ (2006) A PROactive Request Distribution (PRORD) using web log mining in a cluster-based web server. In: International conference on parallel processing ICPP 2006, pp 559–568
MathWorks, Inc. (2009) http://www.mathwork.com
Menascé DA, Almeida VAF (1998) Capacity planning for web performance: metrics, models, and methods. Prentice-Hall, Upper Saddle River
Menasce DA, Bennani MN (2006) Analytic performance models for single class and multiple class multithreaded software servers. In: Proc of computer measurement group conf, Dec 2006
Mitzenmacher M (2000) How Useful is Old Information. IEEE Trans Parallel Distrib Syst 11:6–20
Mosberger D, Jin T (1997) Httperf a tool to measure web server performance. In: Proc of USENIX symposium on Internet technologies and systems, 1997, pp 59–76
MySQL Database (2009) http://www.mysql.com/
Netcraft Web Server Survey (2009) http://www.netcraft.com/survey/
Ogata K (1997) Modern control engineering, 3rd edn. Prentice-Hall, Upper Saddle River
PHP Hypertext Preprocessor (2009) http://www.php.net/
RUBBoS (2009) Rice University Bulletin Board System. http://rubbos.objectweb.org
RUBIS benchmark (2009) http://rubis.objectweb.org/
Schroeder B, Balter MH (2006) Web servers under overload: how scheduling can help. ACM Trans Internet Technol (TOIT) 6(1):20–52
Schroeder T, Goddard S, Ramamurthy B (2000) Scalable web server clustering technologies. IEEE Netw 14(3):38–45
Shan Z, Lin Ch, Marinescu DC, Yang Y (2002) Modeling and performance analysis of QoS-aware load balancing of web-server clusters. Comput Netw 40(2):235–256
Teodoro G, Tavares T, Coutinho B, Meira W Jr (2003) Guedes, load balancing on stateful clustered web servers. In: Proc of 15th symposium on computer architecture and high performance computing, 10–12 Nov 2003, pp 207–215
Tran N, Reed D (2004) Automatic ARIMA time series modeling for adaptive I/O prefetching. IEEE Trans Parallel Distrib Syst 15(4):362–377
Transaction Processing Council (2009) http://www.tpc.org/
Ungureanu V, Melamed B, Bradford PG, Katehakis M (2004) Class-dependent assignment in cluster-based servers. In: Proc of the 2004 ACM symposium on applied computing parallel and distributed systems (PDS), Cyprus, pp 1420–1425
Urgaonkar B, Pacifici G, Shenoy P, Spreitzer M, Tantawi A (2005) An analytical model for multi tier Internet services and its applications. Perform Eval Rev 33(1)
Urgaonkar B, Shenoy P, Roscoe T (2007) Resource overbooking and application profiling in shared Internet hosting platforms. ACM Trans Internet Technol, 2007
Vercauteren T, Aggarwal P, Wang X, Li TH (2007) Hierarchical forecasting of web server workload using sequential Monte Carlo training. IEEE Trans Signal Process 55(4)
Xiong Z, Yan P (2005) A solution for supporting QoS in web server cluster. Proc Int Conf Wirel Commun Netw Mobile Comput 2(23–26):834–839
Zhang Q, Riska A, Sun W, Smirni E, Ciardo G (2005) Workload-aware load balancing for clustered web servers. IEEE Trans Parallel Distrib Syst 16:219–233
Zhu H, Tang H, Yang T (2001) Demand-driven service differentiation for cluster-based network servers. In: Proc of IEEE INFOCOM’2001, Anchorage, AK, April 2001
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Sharifian, S., Motamedi, S.A. & Akbari, M.K. An approximation-based load-balancing algorithm with admission control for cluster web servers with dynamic workloads. J Supercomput 53, 440–463 (2010). https://doi.org/10.1007/s11227-009-0303-8
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11227-009-0303-8