I microservizi suddividono un'applicazione in piccoli servizi indipendenti. Possono aiutare grandi team a scalare — ma per la maggior parte dei progetti aggiungono una complessità che costa più di quanto rende. Sapere quando servono davvero risparmia molte pene.
Cosa sono
Invece di un'applicazione (un «monolite»), il sistema è fatto di molti piccoli servizi che dialogano via rete, ciascuno con un compito e distribuibile da solo. Quell'indipendenza è tutto il senso — e tutto il costo.
Cosa risolvono — e costano
- Risolvono: grandi team che lavorano senza pestarsi i piedi.
- Risolvono: scalare una parte pesante indipendentemente dal resto.
- Costano: chiamate di rete, debug distribuito, complessità di distribuzione.
- Costano: ora gestisci infrastruttura, non solo codice.
Segnali che potrebbero servirti
Più team bloccati da un'unica base di codice, un componente che richiede una scalabilità molto diversa dal resto, o parti del sistema con cicli di vita davvero separati. Se nulla di questo è vero, un monolite pulito ti servirà meglio e a meno.