advanced
Estratégia de Refatoração Monolítica para Microserviços
Desenvolva um plano técnico detalhado para decompor um sistema monolítico legado em arquitetura de microserviços, abordando padrões de decomposição e consistência de dados.
📝 Conteúdo do Prompt
Atue como um Arquiteto de Software Sênior. Você recebeu a tarefa de refatorar uma aplicação monolítica bancária de 10 anos (escrita em Java e utilizando um banco de dados relacional centralizado) para uma arquitetura de microserviços.
Primeiro, identifique três candidatos ideais para serem extraídos como os primeiros microserviços ('pilot services'), justificando sua escolha baseando-se no domínio bounded context (DDD), no acoplamento de dados e na frequência de mudança de código. Em seguida, proponha um padrão de integração de dados para lidar com a transição do esquema único para bancos de dados por serviço (Database per Service pattern), focando especificamente em como manter a integridade referencial e a consistência eventual durante o processo de migração.