Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Fase 2: progettazione e implementazione
Questa sezione illustra come trasformare i vostri obiettivi di resilienza in realtà. Hai definito ciò che conta di più per la tua azienda e ora è il momento di svilupparlo. Come si fa a rafforzare la resilienza senza rallentare l'innovazione?
Pensate ai servizi AWS gestiti come a una scorciatoia per la resilienza. Invece di sprecare ore preziose di progettazione per la manutenzione dell'infrastruttura, utilizza servizi che gestiscono la ridondanza al posto tuo. Ad esempio, considera Amazon Simple Storage Service (Amazon S3) Simple Storage Service (Amazon S3). Memorizza automaticamente più copie dei dati all'interno di e Regione AWS per garantirne la durabilità. Non richiede codice aggiuntivo o operazioni di cercapersone a tarda notte.
Quali sono i componenti principali delle vostre applicazioni? Le scelte intelligenti possono moltiplicare l'impatto del tuo team. Considerate un database che sia la spina dorsale del vostro servizio. Invece di creare il tuo sistema di replica, prendi in considerazione l'utilizzo di Amazon Aurora, che gestisce automaticamente il failover. Queste funzionalità potrebbero costare di più, ma spostano l'attenzione del team dalla manutenzione dell'infrastruttura alla risoluzione dei problemi aziendali. Questo costo può essere compensato mediante una distribuzione più rapida delle funzionalità e la prevenzione della perdita di fatturato durante le interruzioni.
A volte le startup devono creare soluzioni personalizzate. Questa è la natura delle startup innovative. Quando lo fai, mantienilo semplice ma intelligente. Distribuisci la tua applicazione su più zone di disponibilità utilizzando i gruppi Elastic Load Balancing e Amazon EC2 Auto Scaling. Imposta la capacità minima del gruppo Auto Scaling per gestire il traffico di base anche in caso di guasto di una zona di disponibilità. Ciò garantisce la resilienza contro i guasti localizzati senza schemi architettonici complessi. Man mano che la tua startup cresce e i clienti richiedono una maggiore resilienza, puoi passare ad approcci più sofisticati.
Ti consigliamo di tenere separati gli ambienti di produzione e sviluppo. Account AWS Si è tentati di mescolarli quando ci si muove velocemente, ma questo limite è la rete di sicurezza. Evita che un esperimento ben intenzionato interrompa il tuo servizio di produzione. Pensatela come un'assicurazione per la vostra cultura dello sviluppo basata sul «muovetevi velocemente e rompete le cose»: rompete le cose durante lo sviluppo, mantenete stabile la produzione.
Se la tua applicazione dipende da servizi di terze parti, pianifica i relativi guasti. Quando il sistema di elaborazione dei pagamenti presenta problemi, il sistema è in grado di gestirli correttamente? Crea semplici interruttori automatici e opzioni di riserva. Forse metti in coda quelle transazioni invece di mostrare messaggi di errore. I tuoi clienti apprezzeranno il fatto che tu abbia mantenuto le cose funzionanti, anche se non perfettamente.
Documenta mentre costruisci, ma mantieni la praticità. Concentrati sulla registrazione dei motivi alla base delle decisioni chiave e crea semplici playbook di ripristino. È importante averli pronti quando si verificano incidenti.
Non state costruendo per una resilienza perfetta; state costruendo per una resilienza adeguata. Ogni ora dedicata alla resilienza ingegneristica è un'ora non dedicata alle funzionalità richieste dai clienti. Utilizza i servizi AWS gestiti come base, aggiungi resilienza mirata dove è più importante e crea percorsi chiari per aumentare la resilienza man mano che la tua azienda cresce.
Il prossimo capitolo illustra come convalidare queste scelte di progettazione senza sprecare risorse ingegneristiche. Per le startup, i test dovrebbero essere un vantaggio ragionevole e un investimento intelligente nella resilienza dell'applicazione.