A Method of Transparent Graceful Failover in Low Latency Stateful Microservices
Microservice architecture is a preferred way to build applications. Being flexible and loosely coupled, it allows to deploy code at a high pace. State, or, in other words, data is not only a commodity but crucial to any business. The high availability and accessibility of data enables companies to r...
Main Authors: | , |
---|---|
Format: | Article |
Language: | English |
Published: |
MDPI AG
2022-11-01
|
Series: | Electronics |
Subjects: | |
Online Access: | https://www.mdpi.com/2079-9292/11/23/3936 |
_version_ | 1797463445744910336 |
---|---|
author | Kęstutis Pakrijauskas Dalius Mažeika |
author_facet | Kęstutis Pakrijauskas Dalius Mažeika |
author_sort | Kęstutis Pakrijauskas |
collection | DOAJ |
description | Microservice architecture is a preferred way to build applications. Being flexible and loosely coupled, it allows to deploy code at a high pace. State, or, in other words, data is not only a commodity but crucial to any business. The high availability and accessibility of data enables companies to remain competitive. However, maintaining low latency stateful microservices, for example, performing updates, is difficult compared to stateless microservices. Making changes to a stateful microservice requires a graceful failover, which has an impact on the availability budget. The method of graceful failover is proposed to improve availability of a low latency stateful microservice when performing maintenance. By observing database connection activity and forcefully terminating idle client connections, the method allows to redirect database requests from one node to another with negligible impact on the client. Thus, the proposed method allows to keep the precious availability budget untouched while performing maintenance operations on low latency stateful microservices. A set of experiments was performed to evaluate stateful microservice availability during failover and to validate the method. The results have shown that near-zero downtime was achieved during a graceful failover. |
first_indexed | 2024-03-09T17:50:48Z |
format | Article |
id | doaj.art-d8f8d996714646fcb0d60c157204134d |
institution | Directory Open Access Journal |
issn | 2079-9292 |
language | English |
last_indexed | 2024-03-09T17:50:48Z |
publishDate | 2022-11-01 |
publisher | MDPI AG |
record_format | Article |
series | Electronics |
spelling | doaj.art-d8f8d996714646fcb0d60c157204134d2023-11-24T10:47:58ZengMDPI AGElectronics2079-92922022-11-011123393610.3390/electronics11233936A Method of Transparent Graceful Failover in Low Latency Stateful MicroservicesKęstutis Pakrijauskas0Dalius Mažeika1Department of Information Systems, Faculty of Fundamental Sciences, Vilnius Gediminas Technical University, Sauletekio Avn., 11, 10223 Vilnius, LithuaniaDepartment of Information Systems, Faculty of Fundamental Sciences, Vilnius Gediminas Technical University, Sauletekio Avn., 11, 10223 Vilnius, LithuaniaMicroservice architecture is a preferred way to build applications. Being flexible and loosely coupled, it allows to deploy code at a high pace. State, or, in other words, data is not only a commodity but crucial to any business. The high availability and accessibility of data enables companies to remain competitive. However, maintaining low latency stateful microservices, for example, performing updates, is difficult compared to stateless microservices. Making changes to a stateful microservice requires a graceful failover, which has an impact on the availability budget. The method of graceful failover is proposed to improve availability of a low latency stateful microservice when performing maintenance. By observing database connection activity and forcefully terminating idle client connections, the method allows to redirect database requests from one node to another with negligible impact on the client. Thus, the proposed method allows to keep the precious availability budget untouched while performing maintenance operations on low latency stateful microservices. A set of experiments was performed to evaluate stateful microservice availability during failover and to validate the method. The results have shown that near-zero downtime was achieved during a graceful failover.https://www.mdpi.com/2079-9292/11/23/3936stateful microserviceavailabilitydatabaseclusterKubernetesfailover |
spellingShingle | Kęstutis Pakrijauskas Dalius Mažeika A Method of Transparent Graceful Failover in Low Latency Stateful Microservices Electronics stateful microservice availability database cluster Kubernetes failover |
title | A Method of Transparent Graceful Failover in Low Latency Stateful Microservices |
title_full | A Method of Transparent Graceful Failover in Low Latency Stateful Microservices |
title_fullStr | A Method of Transparent Graceful Failover in Low Latency Stateful Microservices |
title_full_unstemmed | A Method of Transparent Graceful Failover in Low Latency Stateful Microservices |
title_short | A Method of Transparent Graceful Failover in Low Latency Stateful Microservices |
title_sort | method of transparent graceful failover in low latency stateful microservices |
topic | stateful microservice availability database cluster Kubernetes failover |
url | https://www.mdpi.com/2079-9292/11/23/3936 |
work_keys_str_mv | AT kestutispakrijauskas amethodoftransparentgracefulfailoverinlowlatencystatefulmicroservices AT daliusmazeika amethodoftransparentgracefulfailoverinlowlatencystatefulmicroservices AT kestutispakrijauskas methodoftransparentgracefulfailoverinlowlatencystatefulmicroservices AT daliusmazeika methodoftransparentgracefulfailoverinlowlatencystatefulmicroservices |