Microserviços são frequentemente a escolha errada para começar. Uma regra comum é "monolito primeiro": comece com um monolito bem estruturado e extraia serviços apenas quando tiver uma razão concreta.
Evite microserviços quando
✗ Small team — more services than people to run them
✗ Early-stage product — domain boundaries still shifting
✗ No CI/CD, monitoring, or tracing in place
✗ Low traffic — no real scaling pressure
✗ Simple domain — splitting adds cost, not value
O custo da divisão prematura
Mover uma chamada de método in-process para uma chamada de rede adiciona latência, modos de falha, serialização e uma unidade de implantação. Se os limites estiverem errados, você paga tudo isso ainda tem que refatorar entre serviços.
