REL05-BP07 Implementazione di leve di emergenza
Le leve di emergenza sono processi rapidi che possono mitigare l'impatto sulla disponibilità sul carico di lavoro.
Le leve di emergenza disabilitano, limitano o modificano il comportamento di componenti o dipendenze mediante meccanismi noti e testati. Ciò può ridurre i danni causati al carico di lavoro dall'esaurimento delle risorse dovuto ad aumenti imprevisti della domanda e l'impatto dei guasti nei componenti non critici all'interno del carico di lavoro.
Risultato desiderato: implementando le leve di emergenza, è possibile stabilire processi validi noti per garantire la disponibilità dei componenti critici nel carico di lavoro. Il carico di lavoro dovrebbe diminuire gradualmente e continuare a svolgere le sue funzioni aziendali critiche durante l'attivazione di una leva di emergenza. Per ulteriori informazioni sulla parziale riduzione delle prestazioni, consulta REL05-BP01 Implementazione della normale riduzione delle prestazioni per trasformare le dipendenze forti applicabili in dipendenze deboli.
Anti-pattern comuni:
-
L'errore a livello di dipendenze non critiche influisce sulla disponibilità del carico di lavoro principale.
-
Mancato test o mancata verifica del comportamento dei componenti critici durante il deterioramento delle prestazioni dei componenti non critici.
-
Mancata definizione di criteri chiari e deterministici per l'attivazione o la disattivazione di una leva di emergenza.
Vantaggi dell'adozione di questa best practice: l'implementazione delle leve di emergenza può migliorare la disponibilità dei componenti critici del carico di lavoro fornendo ai risolutori processi consolidati per rispondere a picchi di domanda imprevisti o errori a livello di dipendenze non critiche.
Livello di rischio associato alla mancata adozione di questa best practice: medio
Guida all'implementazione
-
Identifica i componenti critici del tuo carico di lavoro.
-
Progetta e definisci l'architettura dei componenti critici del tuo carico di lavoro in modo che sia in grado di sostenere i guasti dei componenti non critici.
-
Esegui i test per convalidare il comportamento dei componenti critici in caso di guasti dei componenti non critici.
-
Definisci e monitora le metriche o i trigger pertinenti per avviare le procedure relative alle leve di emergenza.
-
Definisci le procedure (manuali o automatiche) che includono la leva di emergenza.
Passaggi dell'implementazione
-
Identifica i componenti business-critical nel tuo carico di lavoro.
-
Ogni componente tecnico del carico di lavoro deve essere mappato alla funzione aziendale pertinente e classificato come critico o non critico. Per esempi di funzionalità critiche e non critiche in Amazon, consulta Any Day Can Be Prime Day: How Amazon.com Search Uses Chaos Engineering to Handle Over 84K Requests Per Second
(informazioni in lingua inglese). -
Si tratta di una decisione sia tecnica che aziendale e varia in base all'organizzazione e al carico di lavoro.
-
-
Progetta e definisci l'architettura dei componenti critici del tuo carico di lavoro in modo che sia in grado di sostenere i guasti dei componenti non critici.
-
Durante l'analisi delle dipendenze, valuta tutte le potenziali modalità di guasto e verifica che i meccanismi basati su leve di emergenza forniscano le funzionalità critiche ai componenti a valle.
-
-
Esegui i test per convalidare il comportamento dei componenti critici durante l'attivazione delle leve di emergenza.
-
Evita il comportamento bimodale. Per maggiori dettagli, consulta REL11-BP05 Utilizzo della stabilità statica per evitare un comportamento bimodale.
-
-
Definisci, monitora e attiva gli avvisi per le metriche pertinenti per avviare la procedura relative alla leva di emergenza.
-
L'individuazione delle metriche da monitorare dipende dal carico di lavoro. Alcuni esempi di metrica sono la latenza o il numero di richieste non riuscite nei confronti di una dipendenza.
-
-
Definisci le procedure (manuali o automatiche) che includono la leva di emergenza.
-
Ciò può includere meccanismi come la riduzione del carico
, le richieste di limitazione della larghezza di banda della rete (throttling) o l'implementazione di una parziale riduzione delle prestazioni.
-
Risorse
Best practice correlate:
Documenti correlati:
Video correlati: