Microsserviços
Microsserviços são uma forma de organizar um sistema em várias partes pequenas e independentes, cada uma responsável por uma função do negócio, com banco próprio e publicação separada, que conversam entre si pela rede.
No sistema construído como uma peça só, tudo é publicado junto: uma mudança no cálculo de frete exige publicar também o cadastro, o faturamento e o estoque. Com microsserviços, cada função vira um serviço separado, que pode ser alterado, publicado e escalado sem mexer nos outros.
O ganho real é organizacional. Quando várias equipes trabalham no mesmo sistema, a divisão permite que cada uma evolua a sua parte sem esperar as outras. O ganho técnico, de escalar só a parte que recebe mais carga, existe, mas raramente é o motivo que justifica a mudança.
O preço vem na operação. O que antes era uma chamada de função vira chamada pela rede, que pode falhar ou demorar. Uma consulta que juntava dados de três tabelas passa a depender de três serviços. É preciso monitorar cada peça, rastrear uma requisição entre elas e lidar com versões diferentes convivendo.
Para time pequeno ou domínio de negócio que ainda está mudando, um sistema único bem organizado, com módulos separados por dentro, resolve melhor. Dividir cedo demais congela fronteiras erradas, e mover responsabilidade entre serviços custa muito mais do que mover entre módulos.
Quando se aplica
- Várias equipes trabalham no mesmo sistema e uma trava a publicação da outra.
- Uma parte do sistema tem carga muito diferente das demais e precisa escalar sozinha.
- O domínio de negócio é estável e as fronteiras entre as funções estão claras.
- A empresa tem maturidade de operação: publicação automatizada, monitoramento e resposta a falha.
Quando não se aplica
- O time é pequeno. A sobrecarga de operar muitos serviços consome a capacidade que deveria ir para o produto.
- O negócio ainda está descobrindo como funciona. Fronteira definida cedo demais vira obstáculo.
- Não há monitoramento nem publicação automatizada. Sem isso, cada serviço a mais é mais um lugar para falhar sem ninguém ver.
- A motivação é seguir tendência. Arquitetura se escolhe pelo problema que resolve, não pelo que está na moda.
Arquitetura escolhida pelo tamanho do time e pela maturidade do domínio, com espaço para dividir quando fizer sentido.
Termos relacionados
Dividir o sistema é fácil. Operar as partes é que define se valeu a pena.
O diagnóstico olha o tamanho da equipe, a estabilidade do domínio e a maturidade de operação antes de recomendar qualquer arquitetura.
Agendar diagnóstico
