Dynamic resource provisioning aims at maintaining the end-to-end response time of a web application within a pre-defined SLA. Although the topic has been well studied for monolithic applications, provisioning resources for applications composed of multiple services remains a challenge. When the SLA is violated, one must decide which service(s) should be reprovisioned for optimal effect. We propose to assign an SLA only to the front-end service. Other services are not given any particular response time objectives. Services are autonomously responsible for their own provisioning operations and collaboratively negotiate performance objectives with each other to decide the provisioning service(s). We demonstrate through extensive experiments that our system can add/remove/shift both servers and caches within an entire multi-service application under varying workloads to meet the SLA target and improve resource utilization.
- Resource Provisioning of Web Applications in Heterogeneous Clouds. Jiang Dejun, Guillaume Pierre and Chi-Hung Chi. In Proceedings of the WebApps Conference, June 2011.
- Autonomous Resource Provisioning for Multi-Service Web Applications. Jiang Dejun, Guillaume Pierre and Chi-Hung Chi. In Proceedings of the International WWW conference, April 2010.
- EC2 Performance Analysis for Resource Provisioning of Service-Oriented Applications. Jiang Dejun, Guillaume Pierre and Chi-Hung Chi. In Proceedings of the 3rd Workshop on Non-Functional Properties and SLA Management in Service-Oriented Computing, November 2009.
- Performance Guarantees for Web Applications. Jiang Dejun. PhD thesis, Vrije Universiteit, March 2012.
- Resource Provisioning for AJAX Web Applications. Andeea Visan. Master’s thesis, Vrije Universiteit, July 2011.
- Resource Provisioning for NoSQL Datastores. Mihai Istin. Master’s thesis, Vrije Universiteit, August 2011.