Managing the Response Time for Multi-tiered Web Applications

We present a system for managing the response time of web applications. This system allows service providers to group web application requests into different classes and assign response time goals to these classes of requests. We manage response times by using mechanisms that control the amount of server resources allocated to each class of web requests. We show how our platform can manage complex multitiered applications where each request uses multiple resources distributed over multiple tiers. We consider the case of a data center that supports multiple web applications, with each web application deployed and replicated on different but overlapping subsets of machines. We also show how our system can produce resource request signals that can guide another system that dynamically adjusts the application deployments. We also show how our system can manage heterogeneous requests by taking into account the amount of resources that each request consumes at each tier. To manage the response times of web requests we introduce an additional tier, the Proxy tier. The proxy adds layer-7 mechanisms that divide and control the flow of requests into the application tiers. We use a feedback control loop that periodically adjusts the resources allocated to each class. The feedback controller uses an approximate first-principles model of the system, with parameters derived from continuous monitoring. We discuss our prototype implementation and report experimental results that show the dynamic behavior of the system.

[1]  Naoki Katoh,et al.  Resource Allocation Problems , 1998 .

[2]  Steven H. Low,et al.  Optimization flow control—I: basic algorithm and convergence , 1999, TNET.

[3]  Peter Druschel,et al.  Resource containers: a new facility for resource management in server systems , 1999, OSDI '99.

[4]  Willy Zwaenepoel,et al.  Cluster reserves: a mechanism for resource management in cluster-based network servers , 2000, SIGMETRICS '00.

[5]  Tao Yang,et al.  Demand-driven service differentiation in cluster-based network servers , 2001, Proceedings IEEE INFOCOM 2001. Conference on Computer Communications. Twentieth Annual Joint Conference of the IEEE Computer and Communications Society (Cat. No.01CH37213).

[6]  Benny Rochwerger,et al.  Oceano-SLA based management of a computing utility , 2001, 2001 IEEE/IFIP International Symposium on Integrated Network Management Proceedings. Integrated Network Management VII. Integrated Management Strategies for the New Millennium (Cat. No.01EX470).

[7]  Douglas M. Freimuth,et al.  Kernel Mechanisms for Service Differentiation in Overloaded Web Servers , 2001, USENIX Annual Technical Conference, General Track.

[8]  David E. Culler,et al.  SEDA: An Architecture for Scalable, Well-Conditioned Internet Services , 2001 .

[9]  Amin Vahdat,et al.  Managing energy and server resources in hosting centers , 2001, SOSP.

[10]  Raphael Rom,et al.  Application-aware admission control and scheduling in Web servers , 2002, Proceedings.Twenty-First Annual Joint Conference of the IEEE Computer and Communications Societies.

[11]  Douglas C. Schmidt,et al.  Middleware for real-time and embedded systems , 2002, CACM.

[12]  David E. Culler,et al.  Overload management as a fundamental service design primitive , 2002, EW 10.

[13]  Peter Marbach,et al.  Priority service and max-min fairness , 2002, Proceedings.Twenty-First Annual Joint Conference of the IEEE Computer and Communications Societies.

[14]  K. Shin,et al.  Performance Guarantees for Web Server End-Systems: A Control-Theoretical Approach , 2002, IEEE Trans. Parallel Distributed Syst..

[15]  Prasant Mohapatra,et al.  Session-based overload control in QoS-aware Web servers , 2002, Proceedings.Twenty-First Annual Joint Conference of the IEEE Computer and Communications Societies.

[16]  Vijay Karamcheti,et al.  Enforcing resource sharing agreements among distributed server clusters , 2002, Proceedings 16th International Parallel and Distributed Processing Symposium.

[17]  Yixin Diao,et al.  Using MIMO feedback control to enforce policies for interrelated metrics with application to the Apache Web server , 2002, NOMS 2002. IEEE/IFIP Network Operations and Management Symposium. ' Management Solutions for the New Communications World'(Cat. No.02CH37327).

[18]  David E. Culler,et al.  USENIX Association Proceedings of USITS ’ 03 : 4 th USENIX Symposium on Internet Technologies and Systems , 2003 .

[19]  Mor Harchol-Balter,et al.  Size-based scheduling to improve web performance , 2003, TOCS.

[20]  Mor Harchol-Balter,et al.  Web servers under overload: How scheduling can help , 2006, TOIT.

[21]  Asser N. Tantawi,et al.  Performance management for cluster based Web services , 2003 .

[22]  Danilo Ardagna,et al.  SLA based profit optimization in autonomic computing systems , 2004, ICSOC '04.

[23]  B. Urgaonkar,et al.  Cataclysm: policing extreme overloads in internet applications , 2005, WWW '05.

[24]  Asser N. Tantawi,et al.  Performance management for cluster-based web services , 2005, IEEE Journal on Selected Areas in Communications.