Dissertação

Microservice Decomposition for Transactional Causal Consistent Platforms EVALUATED

Hoje em dia, grande parte das aplicações desenvolvidas com base em arquiteturas monolíticas poderiam beneficiar da sua decomposição numa arquitetura de microserviços ou, em alguns casos, funções \textit{stateless}. No entanto, para decompor uma aplicação monolítica num conjunto de microserviços, o programador precisa de escrever código adicional que corrija as anomalias que são geradas ao executar a decomposição numa configuração distribuída. Algumas ferramentas de suporte à decomposição de aplicações monolíticas num conjunto de microserviços calculam automaticamente os valores para uma série de métricas de complexidade, que correspondem à aproximação para o esforço necessário para a implementação das ações compensatórias para uma determinada decomposição. Esta informação orienta o programador no objetivo de encontrar a decomposição em microserviços mais apropriada para um certo sistema monolítico. Uma limitação destas ferramentas é o facto de terem sido desenvolvidas sob a consideração de que o ambiente de execução não oferece nenhum tipo de apoio transacional. O objetivo deste trabalho é ampliar a utilidade destas ferramentas com mecanismos que consigam ter em conta diferentes modelos de consistência, em particular a Consistência Causal Transacional. Com esta finalidade em vista, utilizaremos mecanismos automatizados de forma a identificar potenciais anomalias durante a execução de uma decomposição quando o ambiente de execução garante Consistência Causal Transacional. A descoberta destas anomalias pode ser utilizada para guiar a implementação de ações compensatórias e para oferecer uma estimativa para a complexidade associada ao desenvolvimento de uma determinada decomposição.
Microserviços, Consistência de Dados, Anomalias de Serializabilidade, Sistemas Distribuídos

junho 22, 2022, 9:0

Publicação

Obra sujeita a Direitos de Autor

Orientação

ORIENTADOR

Luís Eduardo Teixeira Rodrigues

Departamento de Engenharia Informática (DEI)

Professor Catedrático