Repository logo
 
Loading...
Thumbnail Image
Publication

Transformação de arquitetura monolítica para microsserviços

Use this identifier to reference this record.
Name:Description:Size:Format: 
TM_João_Marques.pdf146.99 KBAdobe PDF Download

Abstract(s)

Most computer applications developed in recent decades are based on a monolithic model, where all the functionalities are provided in a single block of code. This dissertation evaluates the decomposition of a monolithic application into microservices, the advantages and disadvantages of such an approach, the design and delivery possibilities, and the different technologies to be used. The study describes and analyses each of the hypotheses in the light of the assumptions shared by Trust Systems, meeting the objectives of simplifying the maintenance and development of new functionalities and the capacity for scale and resilience of the final system. The functionalities and dependencies of the monolithic application modules were analyzed in detail in order to assess the possible microservices to be implemented and their contribution to the business processes to be implemented by the system. This analysis made it possible to choose the most appropriate decomposition pattern, design pattern and resilience pattern. The decomposition pattern chosen was Decompose by business capability, while the design pattern adopted was the API Gateway based pattern. As for the resilience patterns, the Timeout and Retries patterns were selected. The microservices were implemented using various technologies and frameworks, such as JHipster, Java Spring, Keycloak, and PostgreSQL. This study also suggests a testing structure to follow before making it available in production. It was concluded that decomposing applications into microservices contributes to greater agility in development and easier availability of large-scale applications that are less dependent on failures in parts of the system. The work carried out can be used in other studies to help speed up decisions on the best way to split up a monolithic application.

Description

Tese de Mestrado, Engenharia Informática, 2024, Universidade de Lisboa, Faculdade de Ciências

Keywords

Microsserviços Monolítico Padrões de decomposição Padrões de desenho Padrões de resiliência Teses de mestrado - 2024

Pedagogical Context

Citation

Research Projects

Organizational Units

Journal Issue

Publisher

CC License