Skip to content
Tech

Perché la mia migrazione dello schema viene eseguita prima di verificare se i servizi distribuiti la sopportano?

83

Opportunità

Quando si invia una modifica allo schema di un database in produzione, la migrazione viene eseguita prima che qualsiasi strumento verifichi che le versioni dei servizi attualmente in esecuzione possano leggere e scrivere la nuova struttura. Una colonna eliminata o un campo rinominato raggiunge il database prima che i pod obsoleti terminino il drain, e il rollback ripristina lo schema ma non i dati scritti dalla nuova versione nel frattempo. Gli strumenti ORM generano SQL dai diff ma non modellano nulla della topologia di deployment, delle versioni concorrenti dei servizi né dei pattern di lettura-scrittura in tempo reale. I team compensano con rituali expand-contract documentati in wiki e nella conoscenza tribale, non applicati dagli strumenti. Un singolo passo nell'ordine errato ha innescato cascate di fallimenti multi-servizio e un incidente documentato da 4,5 milioni di dollari solo nell'ultimo anno.

Perché è importante

Un controllo di compatibilità pre-deployment che modelli la topologia dei servizi attivi trasformerebbe il passaggio più rischioso di un deployment in qualcosa su cui ragionare prima di premere applica.

Come valuto l'opportunità

L'Opportunity Score è la mia valutazione personale, non una misurazione: quanto fa male, con quale frequenza colpisce e quanto poco esiste per risolverlo oggi. Un punteggio più alto significa che lo ritengo più degno di essere sviluppato.

Gravità9/10

Quanto dolore provoca quando si manifesta.

Frequenza8/10

Quanto spesso le persone ci si imbattono davvero.

Spazio bianco7/10

Quanti pochi strumenti validi esistono oggi per affrontarlo.

Altri problemi che vale la pena risolvere