Adaptive microservice scaling for elastic applications

Nathan Cruz Coulson, Stelios Sotiriadis, NIKOLAOS BESSIS

Research output: Contribution to journalArticle

20 Downloads (Pure)

Abstract

Today, Internet users expect web applications to be
fast, performant and always available. With the emergence of
Internet of Things, data collection and the analysis of streams
have become more and more challenging. Behind the scenes,
application owners and cloud service providers work to meet
these expectations, yet, the problem of how to most effectively
and efficiently auto-scale a web application to optimise for
performance whilst reducing costs and energy usage is still a
challenge. In particular, this problem has new relevance due
to the continued rise of Internet of Things and microservice
based architectures. A key concern, that is often not addressed
by current auto-scaling systems, is the decision on which microservice
to scale in order to increase performance. Our aim is
to design a prototype auto-scaling system for microservice based
web applications which can learn from past service experience.
The contributions of the work can be divided into two parts
(a) developing a pipeline for microservice auto-scaling and (b)
evaluating a hybrid sequence and supervised learning model for
recommending scaling actions. The pipeline has proven to be
an effective platform for exploring auto-scaling solutions, as we
will demonstrate through the evaluation of our proposed hybrid
model. The results of hybrid model show the merit of using a
supervised model to identify which microservices should be scaled
up more.
Original languageEnglish
JournalIEEE Internet of Things Journal
Early online date7 Jan 2020
DOIs
Publication statusE-pub ahead of print - 7 Jan 2020

Fingerprint

Pipelines
Supervised learning
Internet
Costs
Internet of things

Keywords

  • Cloud computing
  • Microservices
  • Load balancing

Cite this

@article{db6f5e23b10c4ca2a0b44e357daaff0c,
title = "Adaptive microservice scaling for elastic applications",
abstract = "Today, Internet users expect web applications to befast, performant and always available. With the emergence ofInternet of Things, data collection and the analysis of streamshave become more and more challenging. Behind the scenes,application owners and cloud service providers work to meetthese expectations, yet, the problem of how to most effectivelyand efficiently auto-scale a web application to optimise forperformance whilst reducing costs and energy usage is still achallenge. In particular, this problem has new relevance dueto the continued rise of Internet of Things and microservicebased architectures. A key concern, that is often not addressedby current auto-scaling systems, is the decision on which microserviceto scale in order to increase performance. Our aim isto design a prototype auto-scaling system for microservice basedweb applications which can learn from past service experience.The contributions of the work can be divided into two parts(a) developing a pipeline for microservice auto-scaling and (b)evaluating a hybrid sequence and supervised learning model forrecommending scaling actions. The pipeline has proven to bean effective platform for exploring auto-scaling solutions, as wewill demonstrate through the evaluation of our proposed hybridmodel. The results of hybrid model show the merit of using asupervised model to identify which microservices should be scaledup more.",
keywords = "Cloud computing, Microservices, Load balancing",
author = "{Cruz Coulson}, Nathan and Stelios Sotiriadis and NIKOLAOS BESSIS",
year = "2020",
month = "1",
day = "7",
doi = "10.1109/JIOT.2020.2964405",
language = "English",
journal = "IEEE Internet of Things Journal",
issn = "2327-4662",
publisher = "Institute of Electrical and Electronics Engineers",

}

Adaptive microservice scaling for elastic applications. / Cruz Coulson, Nathan; Sotiriadis, Stelios; BESSIS, NIKOLAOS.

In: IEEE Internet of Things Journal, 07.01.2020.

Research output: Contribution to journalArticle

TY - JOUR

T1 - Adaptive microservice scaling for elastic applications

AU - Cruz Coulson, Nathan

AU - Sotiriadis, Stelios

AU - BESSIS, NIKOLAOS

PY - 2020/1/7

Y1 - 2020/1/7

N2 - Today, Internet users expect web applications to befast, performant and always available. With the emergence ofInternet of Things, data collection and the analysis of streamshave become more and more challenging. Behind the scenes,application owners and cloud service providers work to meetthese expectations, yet, the problem of how to most effectivelyand efficiently auto-scale a web application to optimise forperformance whilst reducing costs and energy usage is still achallenge. In particular, this problem has new relevance dueto the continued rise of Internet of Things and microservicebased architectures. A key concern, that is often not addressedby current auto-scaling systems, is the decision on which microserviceto scale in order to increase performance. Our aim isto design a prototype auto-scaling system for microservice basedweb applications which can learn from past service experience.The contributions of the work can be divided into two parts(a) developing a pipeline for microservice auto-scaling and (b)evaluating a hybrid sequence and supervised learning model forrecommending scaling actions. The pipeline has proven to bean effective platform for exploring auto-scaling solutions, as wewill demonstrate through the evaluation of our proposed hybridmodel. The results of hybrid model show the merit of using asupervised model to identify which microservices should be scaledup more.

AB - Today, Internet users expect web applications to befast, performant and always available. With the emergence ofInternet of Things, data collection and the analysis of streamshave become more and more challenging. Behind the scenes,application owners and cloud service providers work to meetthese expectations, yet, the problem of how to most effectivelyand efficiently auto-scale a web application to optimise forperformance whilst reducing costs and energy usage is still achallenge. In particular, this problem has new relevance dueto the continued rise of Internet of Things and microservicebased architectures. A key concern, that is often not addressedby current auto-scaling systems, is the decision on which microserviceto scale in order to increase performance. Our aim isto design a prototype auto-scaling system for microservice basedweb applications which can learn from past service experience.The contributions of the work can be divided into two parts(a) developing a pipeline for microservice auto-scaling and (b)evaluating a hybrid sequence and supervised learning model forrecommending scaling actions. The pipeline has proven to bean effective platform for exploring auto-scaling solutions, as wewill demonstrate through the evaluation of our proposed hybridmodel. The results of hybrid model show the merit of using asupervised model to identify which microservices should be scaledup more.

KW - Cloud computing

KW - Microservices

KW - Load balancing

U2 - 10.1109/JIOT.2020.2964405

DO - 10.1109/JIOT.2020.2964405

M3 - Article

JO - IEEE Internet of Things Journal

JF - IEEE Internet of Things Journal

SN - 2327-4662

ER -