top of page
  • Foto do escritorMarcelo Santos

Monolito ou Microserviço? Existe uma terceira via!

Existe uma tercrira via...



A escolha entre monolitos e microserviços não precisa ser binária. Existe uma abordagem intermediária, conhecida como macroservices, que combina o melhor de ambos os mundos.


Os monolitos são conhecidos por sua simplicidade inicial e facilidade de gerenciamento, enquanto os microserviços destacam-se pela escalabilidade independente e flexibilidade tecnológica. No entanto, os macroservices oferecem uma alternativa eficaz ao dividir o sistema em componentes maiores que microserviços, mas menores que um monolito.


Com macroservices, reduz-se a complexidade operacional, pois há menos componentes para gerenciar. A comunicação interna é simplificada, melhorando a performance. Além disso, a escalabilidade pode ser seletiva, permitindo que partes específicas do sistema que necessitam de mais recursos sejam escaladas sem a necessidade de escalar o sistema inteiro.


Desenvolver e manter macroservices também é facilitado pela maior coesão e pelo isolamento de falhas parcial. Cada macroservice pode ser responsável por um conjunto de funcionalidades coesas, tornando o desenvolvimento e a manutenção mais gerenciáveis. 


Optar por macroservices é particularmente vantajoso para projetos em crescimento, onde a simplicidade inicial de um monolito já não é suficiente, mas a granularidade extrema dos microserviços é excessiva. Também é ideal para equipes de tamanho moderado, que não podem gerenciar dezenas de microserviços, mas que beneficiariam de uma abordagem mais modular que um monolito puro.



Como eu sempre gosto de ressaltar, no fim das contas, a arquitetura de software deve ser escolhida com base nas necessidades específicas e no estágio do projeto e da organização, buscando sempre o equilíbrio certo entre simplicidade e escalabilidade.

bottom of page