Durante a última década, a arquitetura de microsserviços foi promovida como a solução definitiva para escalar aplicações e equipas. No entanto, à medida que a poeira assenta e os custos operacionais com redes complexas aumentam, a comunidade de engenharia de software começou a reavaliar os seus custos ocultos.
O Custo Oculto da Distribuição
Distribuir uma aplicação por dezenas de microsserviços introduz uma série de complexidades inevitáveis: consistência eventual de base de dados, latência de rede, custos astronómicos de tráfego cloud e a necessidade de criar ambientes complexos de Kubernetes apenas para depurar um bug. Muitas startups e PMEs descobriram que a maior parte do seu tempo de desenvolvimento era gasto a gerir a infraestrutura em vez de criar funcionalidades reais.
A Ascensão do Monólito Modular
O monólito modular surge como uma abordagem pragmática intermédia. Trata-se de uma aplicação única (Single Deployable), mas estruturalmente dividida em módulos rigorosos e isolados no código. Cada módulo encapsula a sua própria lógica de negócio e expõe apenas contratos públicos bem definidos.
Benefícios desta Abordagem
Com um monólito modular, as equipas ganham o melhor de dois mundos:
- Simplicidade operacional: Uma base de dados, um pipeline de CI/CD e monitorização centralizada simples.
- Refactoring fácil: Mover código entre módulos é uma operação segura e simples com ajuda do compilador ou IDE, sem quebrar APIs externas de rede.
- Caminho de migração aberto: Se um módulo específico crescer ao ponto de precisar de recursos de computação dedicados, ele pode ser facilmente extraído para um microsserviço devido ao seu isolamento inicial.
Deixe um comentário