Agile dynamic provisioning of multi-tier Internet applications

Bhuvan Urgaonkar, Prashant Shenoy, Abhishek Chandra, Pawan Goyal, Timothy Wood

Research output: Contribution to journalArticlepeer-review

304 Scopus citations


Dynamic capacity provisioning is a useful technique for handling the multi-time-scale variations seen in Internet workloads. In this article, we propose a novel dynamic provisioning technique for multi-tier Internet applications that employs (1) a flexible queuing model to determine how much of the resources to allocate to each tier of the application, and (2) a combination of predictive and reactive methods that determine when to provision these resources, both at large and small time scales. We propose a novel data center architecture based on virtual machine monitors to reduce provisioning overheads. Our experiments on a forty-machine Xen/Linux-based hosting platform demonstrate the responsiveness of our technique in handling dynamic workloads. In one scenario where a flash crowd caused the workload of a three-tier application to double, our technique was able to double the application capacity within five minutes, thus maintaining response-time targets. Our technique also reduced the overhead of switching servers across applications from several minutes to less than a second, while meeting the performance targets of residual sessions.

Original languageEnglish (US)
Article number1
JournalACM Transactions on Autonomous and Adaptive Systems
Issue number1
StatePublished - Mar 1 2008


  • Dynamic provisioning
  • Internet application


Dive into the research topics of 'Agile dynamic provisioning of multi-tier Internet applications'. Together they form a unique fingerprint.

Cite this