Is it Worth Migrating a Monolith to Microservices? An Experience Report on Performance, Availability and Energy Usage - Inria - Institut national de recherche en sciences et technologies du numérique
Communication Dans Un Congrès Année : 2024

Is it Worth Migrating a Monolith to Microservices? An Experience Report on Performance, Availability and Energy Usage

Résumé

The microservice architecture (MSA) emerged as an evolution of existing architectural styles with the promise of improving software quality by decomposing an app into modules that can be maintained, deployed, and scaled independently. However, the transition from a monolithic to a microservice architecture is fraught with difficulties, especially when it comes to assessing qualitative aspects, as controversial results can arise. In this paper, we present an experience report on the migration of a monolithic web application and use performance, availability and energy efficiency as quality attributes to shed light on such an architectural transition. Horizontal scaling, i.e., distributing the workload across several service instances, is applied and we study its impact.

Our main findings are: i) when no app component is replicated, MSA outperforms the monolithic architecture; ii) the monolithic architecture shows performance and availability improvement when replicating the entire app; iii) the replicated MSA version reaches a ceiling when not replicating its routing part (i.e., the API gateway), showing worse response times compared to the replicated monolith; iv) when replicating the API gateway, the MSA version reaches optimal performance with fewer replicates than the monolith; v) when not replicating services, MSA consumes more CPU resources than the monolithic architecture; vi) when scaling up, the MSA version is more efficient than the replicated monolith in terms of memory usage, and it can better exploit CPU resources; vii) when not replicating services, MSA consumes more energy than the monolithic architecture, whereas when scaling up, the MSA version is more efficient than the replicated monolith; MSA version reaches a good balance between CPU and memory usage.

Fichier principal
Vignette du fichier
ICWS_2024___SoY_Load_Tests.pdf (1.92 Mo) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)

Dates et versions

hal-04781943 , version 1 (13-12-2024)

Licence

Identifiants

Citer

Vincent Berry, Arnaud Castelltort, Benoit Lange, Joan Teriihoania, Chouki Tibermacine, et al.. Is it Worth Migrating a Monolith to Microservices? An Experience Report on Performance, Availability and Energy Usage. ICWS 2024 - IEEE International Conference on Web Services, Jul 2024, Shenzhen, China. pp.944-954, ⟨10.1109/ICWS62655.2024.00112⟩. ⟨hal-04781943⟩
0 Consultations
0 Téléchargements

Altmetric

Partager

More