Skip to main content

Lund University Publications

LUND UNIVERSITY LIBRARIES

Control-Based Load-Balancing Techniques: Analysis and Performance Evaluation via a Randomized Optimization Approach

Papadopoulos, Alessandro Vittorio LU ; Klein, Cristian ; Maggio, Martina LU ; Dürango, Jonas LU ; Dellkrantz, Manfred LU ; Hernandez-Rodriguez, Francisco ; Elmroth, Erik and Årzén, Karl-Erik LU orcid (2016) In Control Engineering Practice 52(July). p.24-34
Abstract
Cloud applications are often subject to unexpected events like flashcrowds and hardware failures. Users that expect a predictable behavior may abandon an unresponsive application when these events occur. Researchers and engineers addressed this problem on two separate fronts: first, they introduced replicas - copies of the application with the same functionality - for redundancy and scalability; second, they added a self-adaptive feature called brownout inside cloud applications to bound response times by modulating user experience. The presence of multiple replicas requires a dedicated component to direct incoming traffic: a load-balancer.

Existing load-balancing strategies based on response times interfere with the response time... (More)
Cloud applications are often subject to unexpected events like flashcrowds and hardware failures. Users that expect a predictable behavior may abandon an unresponsive application when these events occur. Researchers and engineers addressed this problem on two separate fronts: first, they introduced replicas - copies of the application with the same functionality - for redundancy and scalability; second, they added a self-adaptive feature called brownout inside cloud applications to bound response times by modulating user experience. The presence of multiple replicas requires a dedicated component to direct incoming traffic: a load-balancer.

Existing load-balancing strategies based on response times interfere with the response time controller developed for brownout-compliant applications. In fact, the brownout approach bounds response times using a control action. Hence, the response time, that was used to aid load-balancing decision, is not a good indicator of how well a replica is performing.

To fix this issue, this paper reviews some proposal for brownout-aware load-balancing and provides a comprehensive experimental evaluation that compares them. To provide formal guarantees on the load-balancing performance, we use a randomized optimization approach and apply the scenario theory. We perform an extensive set of experiments on a real machine, extending the popular lighttpd web server and load-balancer, and obtaining a production-ready implementation. Experimental results show an improvement of the user experience over Shortest Queue First (SQF) - believed to be near-optimal in the non-adaptive case. The improved user experience is obtained preserving the response time predictability. (Less)
Please use this url to cite or link to this publication:
author
; ; ; ; ; ; and
organization
publishing date
type
Contribution to journal
publication status
published
subject
keywords
load-balancing, randomized optimization, cloud control
in
Control Engineering Practice
volume
52
issue
July
pages
11 pages
publisher
Elsevier
external identifiers
  • scopus:84962868608
  • wos:000377740300003
ISSN
0967-0661
DOI
10.1016/j.conengprac.2016.03.020
project
EIT_VR CLOUD Cloud Control
language
English
LU publication?
yes
id
ccf16d56-2433-430c-83c2-e6b952e82067
date added to LUP
2016-04-13 17:33:01
date last changed
2022-03-31 23:19:58
@article{ccf16d56-2433-430c-83c2-e6b952e82067,
  abstract     = {{Cloud applications are often subject to unexpected events like flashcrowds and hardware failures. Users that expect a predictable behavior may abandon an unresponsive application when these events occur. Researchers and engineers addressed this problem on two separate fronts: first, they introduced replicas - copies of the application with the same functionality - for redundancy and scalability; second, they added a self-adaptive feature called brownout inside cloud applications to bound response times by modulating user experience. The presence of multiple replicas requires a dedicated component to direct incoming traffic: a load-balancer.<br/><br/>Existing load-balancing strategies based on response times interfere with the response time controller developed for brownout-compliant applications. In fact, the brownout approach bounds response times using a control action. Hence, the response time, that was used to aid load-balancing decision, is not a good indicator of how well a replica is performing.<br/><br/>To fix this issue, this paper reviews some proposal for brownout-aware load-balancing and provides a comprehensive experimental evaluation that compares them. To provide formal guarantees on the load-balancing performance, we use a randomized optimization approach and apply the scenario theory. We perform an extensive set of experiments on a real machine, extending the popular lighttpd web server and load-balancer, and obtaining a production-ready implementation. Experimental results show an improvement of the user experience over Shortest Queue First (SQF) - believed to be near-optimal in the non-adaptive case. The improved user experience is obtained preserving the response time predictability.}},
  author       = {{Papadopoulos, Alessandro Vittorio and Klein, Cristian and Maggio, Martina and Dürango, Jonas and Dellkrantz, Manfred and Hernandez-Rodriguez, Francisco and Elmroth, Erik and Årzén, Karl-Erik}},
  issn         = {{0967-0661}},
  keywords     = {{load-balancing; randomized optimization; cloud control}},
  language     = {{eng}},
  number       = {{July}},
  pages        = {{24--34}},
  publisher    = {{Elsevier}},
  series       = {{Control Engineering Practice}},
  title        = {{Control-Based Load-Balancing Techniques: Analysis and Performance Evaluation via a Randomized Optimization Approach}},
  url          = {{https://lup.lub.lu.se/search/files/7254320/brownout_cep2014.pdf}},
  doi          = {{10.1016/j.conengprac.2016.03.020}},
  volume       = {{52}},
  year         = {{2016}},
}