36th International Conference on Software Engineering (ICSE 2014), May 31 – June 7, 2014, Hyderabad, India

Desktop Layout

Adaptive Systems
Technical Research
Hall 2, Chair: Sam Malek
Brownout: Building More Robust Cloud Applications
Cristian Klein, Martina Maggio, Karl-Erik Årzén, and Francisco Hernández-Rodriguez
(Umeå University, Sweden; Lund University, Sweden)
Publisher's Version
Preprint
Supplementary Material
Abstract: Self-adaptation is a first class concern for cloud applications, which should be able to withstand diverse runtime changes. Variations are simultaneously happening both at the cloud infrastructure level - for example hardware failures - and at the user workload level - flash crowds. However, robustly withstanding extreme variability, requires costly hardware over-provisioning. In this paper, we introduce a self-adaptation programming paradigm called brownout. Using this paradigm, applications can be designed to robustly withstand unpredictable runtime variations, without over-provisioning. The paradigm is based on optional code that can be dynamically deactivated through decisions based on control theory. We modified two popular web application prototypes - RUBiS and RUBBoS - with less than 170 lines of code, to make them brownout-compliant. Experiments show that brownout self-adaptation dramatically improves the ability to withstand flash-crowds and hardware failures.

Authors:


Time stamp: 2020-07-05T15:16:08+02:00