Monolite o Microservizi?
Valutare prima la qualità del monolite e la necessità reale di autonomia, scalabilità o isolamento.
Il problema
La scelta architetturale viene spesso ridotta a una preferenza tecnologica, mentre il vero problema è bilanciare semplicità locale e complessità distribuita.
Il pattern
Valutare prima la qualità del monolite e la necessità reale di autonomia, scalabilità o isolamento. Un monolite modulare può essere il target corretto; i microservizi sono una risposta a specifici vincoli, non un obiettivo in sé.
Come funziona
Nel monolite una chiamata è locale e la transazione può essere unica. Nei microservizi compaiono rete, TLS, timeout, retry, autenticazione, discovery, consistenza distribuita, tracing e deployment indipendente. La decisione va quindi presa per capability e per costo operativo.
Esempio sanitario
Benefici
- Riduce la moda architetturale
- Rende espliciti i costi operativi
- Favorisce evoluzione graduale
Trade-off
- Richiede misure reali di coupling e change rate
- Non produce una risposta universale
Quando usarlo
Quando si deve scegliere l'architettura target o pianificare un refactoring.
Quando evitarlo
Quando la decisione è già imposta da vincoli esterni non negoziabili.
Pattern correlati
RIFERIMENTI
Fonti e riferimenti
Draft caricato nel progetto
Capsule Informatiche · Materiale progettuale
