Litcius/Paper detail

A Survey on Microservices Architecture: Principles, Patterns and Migration Challenges

Victor Velepucha, Pamela Flores

2023IEEE Access97 citationsDOIOpen Access PDF

Abstract

Microservices architecture is a new trend embraced by many organizations as a way to modernize their legacy applications. However, although there is work related to the migration process, there is a gap in the body of knowledge related to the principles they should adopt when implementing a microservices architecture. This work presents a comprehensive survey, gathering literature that explores the fundamental principles underlying the object-oriented approach and how these concepts are related to monolithic and microservices architectures. In addition, our research encompasses both monolithic architectures and microservices, along with an investigation into the design patterns and principles utilized within microservices. Our contribution is present a list of patterns used in microservices architecture, the comparation between the principles expounded by the experts in the decomposition of microservices architectures, Martin Fowler and Sam Neuman, and the forerunner of the Principle of Information Hiding, David Parnas, who discusses modularization as a mechanism to improve flexibility and understanding of a system. Additionally, we expose the advantages and disadvantages of monolithic and microservices architectures obtained from the literature review carried out in summary form, which can help as a reference for researchers from academia and industry and finally reveal the trends of microservices architectures today.

Topics & Concepts

MicroservicesComputer scienceSoftware engineeringArchitectureFlexibility (engineering)Data scienceCloud computingManagementOperating systemEconomicsVisual artsArtSoftware System Performance and ReliabilityCloud Computing and Resource ManagementSoftware-Defined Networks and 5G