Ultimamente mi trovo a dover gestire un progetto che sta crescendo più del previsto e mi chiedo se sia il caso di iniziare a suddividere il codice monolitico in microservizi. Ho letto molto in giro, ma mi piacerebbe sentire l'esperienza di qualcuno che ci è già passato: come avete capito che era davvero il momento giusto per fare il salto? Non voglio complicarmi la vita con un'architettura eccessiva, ma allo stesso tempo alcune parti del sistema iniziano a mostrare i segni della tensione quando devono scalare in modo indipendente.
|
Come capire quando è davvero il momento di passare da monolitico a microservizi?
|
|
Di solito i segnali sono chiari quando un dominio inizia a maturare responsabilita diverse e il monolite diventa una barriera per l automazione e per i team che vogliono lavorare in autonomia sui propri pezzi. I microservizi non risolvono tutto ma aprono una strada per deploy piu frequenti e per test mirati. Bisogna pero avere misure e governance adeguate
Mi ricordo la frustrazione delle code di build quando una parte del sistema saliva in carico e non riusciva a scalare da sola. I microservizi hanno davvero dato fiato al progetto solo dopo aver definito domini chiari e responsabilita ben assemblee ma non erano una magia
Probabilmente pensi che i microservizi siano la soluzione a ogni problema di scalabilita ma la realta e diversa. In realta serve una visione di dominio e una buona gestione delle dipendenze prima di spezzare il monolite
Non correre verso i microservizi quando il monolite regge ancora bene e le metriche mostrano stabilita non scalabilita improvvisa. La gestione di transazioni distribuite e la complessita operativa hanno un costo alto
Potrebbe essere utile riformulare la domanda chiedendoti come misurare l indipendenza delle parti e quali metriche contano davvero prima di decidere la divisione per microservizi
Un concetto utile e bounded context e va considerato con cautela nel contesto dei microservizi senza spiegarlo ora nei dettagli
|
|
« Precedente | Successivo »
|

