Uncovering Request Effect in a 3-Tier System with SLT George Porter Computer Science Division Univ. of California Berkeley, Calif. 94708 13 December 2004 Abstract 3-tier web services enable efficient, scalable, and com- posable Internet services. However, because of their inherent open control loop, it is difficult to ensure Quality of Service (QoS) for sessions on overloaded web services. Although control theory has been ap- plied to this problem, previous work requires con- trollers to restrict all connections during overload pe- riods. The contribution of this work is the application of a statistical learning theory (SLT) technique, linear re- gression, to a 3-tier service in operation. The result of the regression is a candidate list of sub requests that cause the most load on the system’s bottleneck. By restricting only this subset of the requests, rather than all of them, control theory controllers will be able to reduce load on the system by disrupting only those users causing the most load. The results are promising–our technique was able to identify strong positive correlations to URLs in all runs of our sys- tem. These can be used to enable better QoS for 3-tier systems. 1 Introduction “Web Services” are an increasingly popular technol- ogy for deploying web-based application portals such as eBay[7] and Amazon.com[1]. Web Services are of- ten built using a middleware layer consist of compos- able building blocks such as Web (HTTP) contain- ers, Java-based application code, and persistent state management through the use of pooled, database connections. Web services are often arranged into tiers of servers–web, application, and database. Such arrangements are called “3-tier systems”. With this design, the code for an Internet-based application is now spread among several components (often run- ning on separate servers), which are connected to- gether with well-defined interfaces. This separation of components allows web services to scale up in re- sponse to new resource demand through the introduc- tion of new servers hosting the particular component in need. Despite this scalability, the load on a web service is driven by the number of users to the system, which can quickly grow large. Flash traffic patterns can drive a web system into overload, leading to poor performance as the system is unable to keep up with the demands placed on it (see Section 3). To pre- vent this, Control Theory (CT) has been successfully applied to 3-tier systems (see Section 2). Control the- oretic approaches to managing 3-tiered systems work by observing the system’s behavior, specificially at a certain quantity such as the load on a CPU, the throughput to disk, or the number of requests served per second. Whenever that quantity deviates from its desired value, the CT controller actuates a control operation. Such operations could include restricting the number of connections arriving to the web server by reducing the rate at which available sockets are handed off to worker threads. Previous work has assumed that requests to the system are homogeneous, in other words, that each 1