Migration of a Monolithic Application to Microservices: a Performance Evaluation in Distributed Environments

Authors

DOI:

https://doi.org/10.5753/reic.2026.7249

Keywords:

Monolithic System, Microservices Architecture, Architectural Reengineering, Performance Evaluation

Abstract

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

Download data is not yet available.

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.

Published

2026-03-27

How to Cite

Becker de Souza, D. L., Xavier Medeiros, T. H., Becker de Souza, W., & Vendramin, A. C. B. K. (2026). Migration of a Monolithic Application to Microservices: a Performance Evaluation in Distributed Environments. Electronic Journal of Undergraduate Research on Computing, 24(1), 171–182. https://doi.org/10.5753/reic.2026.7249

Issue

Section

Full Papers