Home

microserviços

Microserviços é um padrão de arquitetura de software no qual uma aplicação é composta por serviços pequenos, independentes e focados em capacidades de negócio específicas. Cada serviço roda em seu próprio processo e se comunica com os demais por meio de protocolos leves, como HTTP/REST ou mensagens, com implantação independente.

Características-chave incluem limites de contexto bem definidos (bounded context), ciclos de vida independentes, gestão de dados

Entre os benefícios estão modularidade, implantação e escalonamento de partes da aplicação de forma independente, isolamento

Os desafios envolvem complexidade operacional de sistemas distribuídos, coordenação de transações, consistência eventual, duplicação de dados,

Padrões comuns incluem API gateway, descoberta de serviços, balanceamento de carga, circuit breakers, retries, idempotência e

Gestão de dados normalmente envolve cada microserviço com seu próprio banco de dados (persistência poliglota). Isso

Quanto à implantação, a arquitetura costuma exigir infraestrutura moderna, com contêineres (Docker), orquestração (Kubernetes) e práticas

decentralizada,
resiliência,
escalabilidade,
diversidade
tecnológica
e
isolamento
de
falhas,
além
de
contratos
de
API
estáveis.
de
falhas,
possibilidade
de
adotar
tecnologias
diferentes
por
serviço
e
maior
autonomia
de
equipes,
o
que
pode
acelerar
a
entrega
de
novas
funcionalidades.
observabilidade,
segurança,
latência
de
rede,
testes
de
integração
e
versionamento
de
contratos
entre
serviços.
comunicação
orientada
a
eventos.
Também
são
usados
barramentos
de
eventos,
padrões
de
saga
para
transações
distribuídas,
além
de
pipelines
de
CI/CD
e
contêineres.
favorece
independência,
mas
exige
mecanismos
de
consistência
entre
serviços,
como
eventos
ou
CQRS,
e
boa
governança
de
dados
e
contratos
de
API.
de
DevOps.
Microserviços
são
adequados
para
sistemas
grandes
com
equipes
diversas,
mas
podem
não
ser
ideais
para
projetos
simples
ou
com
pouca
equipe.