Concepedia

TLDR

Dynamic capacity provisioning is a useful technique for handling the multi‑time‑scale variations seen in Internet workloads. The authors propose a novel dynamic provisioning technique for multi‑tier Internet applications. The technique uses a flexible queuing model to allocate resources per tier and combines predictive and reactive methods to trigger provisioning at both large and small time scales, implemented within a virtual‑machine‑monitor‑based data‑center architecture to reduce overhead. Experiments on a forty‑machine Xen/Linux platform show the technique responds quickly to dynamic workloads, doubling capacity within five minutes during a flash crowd while reducing server‑switching overhead from minutes to under a second, thereby maintaining response‑time and performance targets.

Abstract

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.

References

YearCitations

Page 1