Jornada Java e Jornada Microsserviços, co- organizadora da womakerscode, devsjavagirl e perifacode, microsoft mvp e criadora de conteudo no youtube e instagram Kamila code
implantável, resolve casos em que você precisa desenvolver mais rápido, implantar mais rápido , dimensionar de modo mais simples e que a aplicação não tenha tantas responsabilidades diferentes para lidar
de serviços fracamente acoplados, resolve o problema de quando temos várias responsabilidades na mesma aplicação, você precisa escalar algumas partes separadas, precisa usar tecnologias diferentes para problemas diferentes, quer separar as responsabilidades da aplicação.
crescendo , o código vai ficando mais confuso e ainda vamos evoluindo tecnicamente e pensamos em soluções e implementações melhores do que as anteriores. Para isso, também existem os padrões de refatorações de microsserviços
para vários microsserviços? Solução: desenvolva uma nova aplicação em volta da anterior para "estrangular o monolito", uns serviços implementem as antigas funcionalidades e façam novas funcionalidades também
de domínio de um monolito polua o modelo de domínio do novo serviço Solução: Defina uma camada de anticorrupção que se traduz entre os dois modelos de domínio
e publicaria uma mensagem ou evento para acionar a próxima transação local na saga. Caso uma transação local falhe a saga vai executar uma série de transações para desfazer as alterações feitas pelas transações locais anteriores.
de microsserviços? Solução: implemente uma consulta definindo um API consumer, que invoca os serviços que possuem os dados e executa uma junção na memória dos resultados.
vários serviços em uma arquitetura de microsserviços? Solução: defina um banco de dados de somente leitura, que é uma replica do "oficial" somente para consulta, a aplicação manterá essa replica atualizada por meio de eventos
baseados em microsserviços acessem os serviços individuais. Solução: implemente um API Gateway que seja o único ponto de entrada para todos os clientes
aplicativo e solucionar problemas? Solução: Usar uma solução de log centralizado de cada instância do serviço, as pessoas usuárias podem pesquisar , analisar e configurar alertas ex: cloud watch, datadog, new relic...
aplicativo e solucionar problemas? Solução: Usar serviços como o sleuth que atribuem um id unico para cada requisição e passa esse id em todos os logs dessa requisição