Litcius/Paper detail

From Monolithic Systems to Microservices: A Comparative Study of Performance

Freddy Tapia, Miguel Ángel Candel Mora, Walter Fuertes, Hernán Aules, Edwin Geovanny Flores Castro, Theofilos Toulkeridis

2020Applied Sciences83 citationsDOIOpen Access PDF

Abstract

Currently, organizations face the need to create scalable applications in an agile way that impacts new forms of production and business organization. The traditional monolithic architecture no longer meets the needs of scalability and rapid development. The efficiency and optimization of human and technological resources prevail; this is why companies must adopt new technologies and business strategies. However, the implementation of microservices still encounters several challenges, such as the consumption of time and computational resources, scalability, orchestration, organization problems, and several further technical complications. Although there are procedures that facilitate the migration from a monolithic architecture to micro-services, none of them accurately quantifies performance differences. The current study aims primarily to analyze some related work that evaluated both architectures. Furthermore, we assess the performance and relationship between different variables of an application that runs in a monolithic structure compared to one of the micro-services. With this, the state-of-the-art review was initially conducted, which confirms the interest of the industry. Subsequently, two different scenarios were evaluated: the first one comprises a web application based on a monolithic architecture that operates on a virtual server with KVM, and the second one demonstrates the same web application based on a microservice architecture, but it runs in containers. Both situations were exposed to stress tests of similar characteristics and with the same hardware resources. For their validation, we applied the non-parametric regression mathematical model to explain the dependency relationship between the performance variables. The results provided a quantitative technical interpretation with precision and reliability, which can be applied to similar issues.

Topics & Concepts

Computer scienceMicroservicesScalabilityAgile software developmentOrchestrationArchitectureWeb serviceService-oriented architectureDistributed computingSoftware engineeringCloud computingWorld Wide WebOperating systemMusicalArtVisual artsSoftware System Performance and ReliabilityCloud Computing and Resource ManagementAdvanced Software Engineering Methodologies