Migration of a Monolithic Application to Microservices: a Performance Evaluation in Distributed Environments
DOI:
https://doi.org/10.5753/reic.2026.7249Keywords:
Monolithic System, Microservices Architecture, Architectural Reengineering, Performance EvaluationAbstract
This article presents the architectural reengineering of a ticket sales system, originally developed under a monolithic architecture, into a microservices-based architecture. The existing system, built with Next.js, was proactively restructured to ensure scalability and high performance in anticipation of future growth in the volume of simultaneous accesses and transactions. The new architecture distributes functionalities such as user management, event catalog, and payment processing into independent services developed in Go and C# .NET. Communication between services is orchestrated by an API Gateway using Hive Gateway, while asynchronous communication for critical flows, such as payment processing, is performed via RabbitMQ. The main objective is to compare the performance of the two architectures using metrics such as response time and number of requests per second (throughput) to validate the benefits of the microservices approach as a strategy for the sustainable system growth. The results indicate that the new distributed architecture achieves better average response time and higher throughput in three of the five evaluated scenarios.
Downloads
References
Barczak, A. and Barczak, M. (2021). Performance comparison of monolith and microservices-based applications. In Proceedings of the 25th World Multi-Conference on Systemics, Cybernetics and Informatics (WMSCI 2021). International Institute of Informatics and Systemics.
Bass, L., Clements, P., and Kazman, R. (2021). Software Architecture in Practice. Addison-Wesley Professional, Boston, 4 edition. The Definitive, Practical, Proven Guide to Architecting Modern Software – Fully Updated with New Content on Mobility, the Cloud, Energy Management, DevOps, Quantum Computing, and More.
Blinowski, G., Ojdowska, A., and Przybylek, A. (2022). Monolithic vs. microservice architecture: A performance and scalability evaluation. IEEE Access, 10:1–1. DOI: 10.1109/ACCESS.2022.3152803.
Faustino, D., Gonçalves, N., Portela, M., and Silva, A. R. (2024). Stepwise migration of a monolith to a microservice architecture: Performance and migration effort evaluation. Performance Evaluation, 164:102411. DOI: 10.1016/j.peva.2024.102411.
Fielding, R. T. (2000). Architectural Styles and the Design of Network-based Software Architectures. PhD thesis, University of California, Irvine, Irvine, CA.
Fowler, M. and Lewis, J. (2014). Microservices: a definition of this new architectural term. [link].
Gluck, A. (2020). Introducing domain-oriented microservice architecture. [link].
GraphQL (2025). Graphql federation. [link].
Majors, C., Fong-Jones, L., and Miranda, G. (2022). Observability Engineering: Achieving Production Excellence. O’Reilly Media, Sebastopol, CA.
Martin, R. C. (2019). Arquitetura Limpa: O Guia do Artesão para Estrutura e Design de Software. Alta Books, Rio de Janeiro. Tradução de: Clean Architecture: A Craftsman’s Guide to Software Structure and Design.
Miguel, F. S. (2021). The netflix cosmos platform. [link].
Mohottige, T., Polyvyanyy, A., Buyya, R., Fidge, C., and Barros, A. (2024). Microservices-based software systems reengineering: State-of-the-art and future directions. arXiv. DOI: 10.48550/arXiv.2407.13915.
Newman, S. (2015). Building Microservices. O’Reilly Media, Sebastopol, CA. Copyright © 2015 Sam Newman. All rights reserved.
PostgreSQL (2025). PostgreSQL. [link].
Pressman, R. S. and Maxim, B. R. (2016). Engenharia de Software: uma abordagem profissional. AMGH, Porto Alegre, 8 edition.
RabbitMQ (2025). Rabbitmq. [link].
Seedat, M., Abbas, Q., Ahmad, N., Feroz, I., Qureshi, A., and Amelio, A. (2024). Transition strategies from monolithic to microservices architectures: A domain-driven approach and case study. VAWKUM Transactions on Computer Sciences, 12:94–110. DOI: 10.21015/vtcs.v12i1.1808.
Sommerville, I. (2011). Engenharia de Software. Pearson Prentice Hall, São Paulo, 9 edition. Tradução de Ivan Bosnic e Kalinka G. de O. Gonçalves. Revisão técnica de Kechi Hirama. Título original: Software Engineering. ISBN 978-85-7936-108-1.
Stradolini, C. J. (2020). Migração de sistemas monolíticos para microsserviços: Estudo de caso de migração de um módulo de pagamentos de e-commerce. Monografia (bacharelado em ciência da computação), Universidade Federal do Rio Grande do Sul, Porto Alegre.
Downloads
Published
How to Cite
Issue
Section
License
Copyright (c) 2026 The authors

This work is licensed under a Creative Commons Attribution 4.0 International License.
