State Management for Cloud-Native Applications
The stateless cloud-native design improves the elasticity and reliability of applications running in the cloud. The design decouples the life-cycle of application states from that of application instances; states are written to and read from cloud databases, and deployed close to the application cod...
Main Authors: | , , |
---|---|
Format: | Article |
Language: | English |
Published: |
MDPI AG
2021-02-01
|
Series: | Electronics |
Subjects: | |
Online Access: | https://www.mdpi.com/2079-9292/10/4/423 |
id |
doaj-e7e48a0c7ce745dba36773e5b3291a04 |
---|---|
record_format |
Article |
spelling |
doaj-e7e48a0c7ce745dba36773e5b3291a042021-02-10T00:04:00ZengMDPI AGElectronics2079-92922021-02-011042342310.3390/electronics10040423State Management for Cloud-Native ApplicationsMárk Szalay0Péter Mátray1László Toka2MTA-BME Network Softwarization Research Group, Faculty of Electrical Engineering and Informatics, Budapest University of Technology and Economics, 1117 Budapest, HungaryEricsson Research, 1117 Budapest, HungaryMTA-BME Network Softwarization Research Group, Faculty of Electrical Engineering and Informatics, Budapest University of Technology and Economics, 1117 Budapest, HungaryThe stateless cloud-native design improves the elasticity and reliability of applications running in the cloud. The design decouples the life-cycle of application states from that of application instances; states are written to and read from cloud databases, and deployed close to the application code to ensure low latency bounds on state access. However, the scalability of applications brings the well-known limitations of distributed databases, in which the states are stored. In this paper, we propose a full-fledged state layer that supports the stateless cloud application design. In order to minimize the inter-host communication due to state externalization, we propose, on the one hand, a system design jointly with a data placement algorithm that places functions’ states across the hosts of a data center. On the other hand, we design a dynamic replication module that decides the proper number of copies for each state to ensure a sweet spot in short state-access time and low network traffic. We evaluate the proposed methods across realistic scenarios. We show that our solution yields state-access delays close to the optimal, and ensures fast replica placement decisions in large-scale settings.https://www.mdpi.com/2079-9292/10/4/423cloud native network functionsstate externalizationplacement optimizationcloud database design |
collection |
DOAJ |
language |
English |
format |
Article |
sources |
DOAJ |
author |
Márk Szalay Péter Mátray László Toka |
spellingShingle |
Márk Szalay Péter Mátray László Toka State Management for Cloud-Native Applications Electronics cloud native network functions state externalization placement optimization cloud database design |
author_facet |
Márk Szalay Péter Mátray László Toka |
author_sort |
Márk Szalay |
title |
State Management for Cloud-Native Applications |
title_short |
State Management for Cloud-Native Applications |
title_full |
State Management for Cloud-Native Applications |
title_fullStr |
State Management for Cloud-Native Applications |
title_full_unstemmed |
State Management for Cloud-Native Applications |
title_sort |
state management for cloud-native applications |
publisher |
MDPI AG |
series |
Electronics |
issn |
2079-9292 |
publishDate |
2021-02-01 |
description |
The stateless cloud-native design improves the elasticity and reliability of applications running in the cloud. The design decouples the life-cycle of application states from that of application instances; states are written to and read from cloud databases, and deployed close to the application code to ensure low latency bounds on state access. However, the scalability of applications brings the well-known limitations of distributed databases, in which the states are stored. In this paper, we propose a full-fledged state layer that supports the stateless cloud application design. In order to minimize the inter-host communication due to state externalization, we propose, on the one hand, a system design jointly with a data placement algorithm that places functions’ states across the hosts of a data center. On the other hand, we design a dynamic replication module that decides the proper number of copies for each state to ensure a sweet spot in short state-access time and low network traffic. We evaluate the proposed methods across realistic scenarios. We show that our solution yields state-access delays close to the optimal, and ensures fast replica placement decisions in large-scale settings. |
topic |
cloud native network functions state externalization placement optimization cloud database design |
url |
https://www.mdpi.com/2079-9292/10/4/423 |
work_keys_str_mv |
AT markszalay statemanagementforcloudnativeapplications AT petermatray statemanagementforcloudnativeapplications AT laszlotoka statemanagementforcloudnativeapplications |
_version_ |
1724275819851808768 |