Uma abordagem para migração de aplicações monolíticas para microservices baseada em programação orientada a aspectos
Made available in DSpace on 2019-03-30T00:23:41Z (GMT). No. of bitstreams: 0 Previous issue date: 2018-12-14 === Recently, organizations are facing difficulties related to the migration of their systems in production from a traditional monolithic architecture to a distributed, decoupled solution b...
Main Author: | |
---|---|
Other Authors: | |
Language: | Portuguese |
Published: |
Universidade de Fortaleza
2018
|
Subjects: | |
Online Access: | https://uol.unifor.br/oul/ObraBdtdSiteTrazer.do?method=trazer&ns=true&obraCodigo=108440 http://dspace.unifor.br/handle/tede/108440 |
Summary: | Made available in DSpace on 2019-03-30T00:23:41Z (GMT). No. of bitstreams: 0
Previous issue date: 2018-12-14 === Recently, organizations are facing difficulties related to the migration of their systems in production from a traditional monolithic architecture to a distributed, decoupled solution based on a set of services developed, deployed and scaled independently, called microservices. An example of success of implementation of this pattern is the Netflix software whose migration process took 10 years due to the complexity involved in migrating a solution that was already in production with a vast customer base. This work proposes an approach for migrating monolithic systems to microservices based on the concept of aspect-oriented programming that enables a simple way to implement the migration in a gradual fashion with few code changes. This enables not only to change the monolithic code gradually, but also to switch back to the monolithic easily by switching off the aspects based on configuration properties. A case study conducted demonstrates the efficiency of the approach for migrating a real monolithic application with low effort and few code changes.
Keywords: Software Engineering. Architecture. Monolithic. Microservices, Migration Process. Production. Distributed Computing === Recentemente, organizações estão enfrentando dificuldades na migração de seus sistemas em produção de um modelo arquitetural tradicional monolítico para uma arquitetura de solução distribuída e mais desacoplada baseada em um conjunto de serviços desenvolvidos, implantados e escalados de forma independente, chamados microservices. Um exemplo de sucesso de implementação deste padrão é o software Netflix cujo processo de migração levou 10 anos devido à complexidade envolvida em migrar uma solução já em produção e com uma vasta base de clientes. Este trabalho propõe uma abordagem para a migração de sistemas monolíticos para microservices baseado no conceito de programação orientada a aspectos, que permite uma maneira simples de realizar a migração de forma gradual e com poucas modificações no código do monolítico. Isso permite não apenas migrar a aplicação aos poucos, mas também voltar para o monolítico facilmente apenas através da desativação dos aspectos baseado em propriedades de configuração. Um Estudo de caso realizado demonstra a eficácia da abordagem na migração de uma aplicação real monolítica com pouco esforço e poucas modificações no código.
Palavras-Chave: Engenharia de Software. Arquitetura. Monolítico. Microservice. Processo de Migração. Produção. Computação Distribuída |
---|