Computer Science Department
School of Computer Science, Carnegie Mellon University


Improving the Performance of Static and Dynamic
Requests at a Busy Web Site

Bianca Schroeder

August 2005

Ph.D. Thesis



Running a high-volume Web site is a challenging task. Web traffic is bursty with peak request rates rising far above average rates and likely phenomena such as flash crowds and hot spots. Yet Web users are very demanding: they expect Web sites to be quickly accessible from around the world 24 hours a day, 7 days a week. Recent studies show that even a short period of slowdown or service interruption can have severe effects: it not only sends customers to the "just a click-away" competitor; it also reflects negatively on the corporate image as a whole.

The broad goal of this thesis is to improve the user-perceived performance of both static and dynamic requests at a busy Web site. By static requests we mean requests of the form "GET me a file". By dynamic requests we mean those which require the Web server to create the requested information on the fly, by accessing a database backend. The approach taken in this thesis does not require buying more hardware or any other costly system upgrades. The main idea is to schedule the existing resources better among requests so as to either improve overall mean performance or improve the performance of a small subset of high-priority requests.

The first part of the thesis presents a very simple solution for improving overall mean response times for static Web workloads by favoring those requests that are quick, or have small remaining processing requirements in accordance with the SRPT scheduling policy. Our policy is particularly effective during transient overload. The second part of this thesis focuses on the more complex dynamic Web requests. We propose and implement various approaches for providing differentiated levels of service for database-driven dynamic requests. We propose and evaluate algorithms for both scheduling of database internal resources and scheduling outside the DBMS through an external front-end. In the third part of the thesis we study the effect of the experimental model on performance evaluation. In particular, we investigate the impact of choosing a closed versus an open system model, a question that has received little attention in the past.

245 pages

Return to: SCS Technical Report Collection
School of Computer Science homepage

This page maintained by