REL05-BP07 Implementar medidas emergenciais
Medidas emergenciais são processos rápidos que podem atenuar o impacto da disponibilidade na workload.
As medidas emergenciais funcionam com a desativação, o controle de utilização ou a alteração do comportamento dos componentes ou das dependências com o uso de mecanismos conhecidos e testados. Isso pode aliviar as deficiências da workload decorrentes da exaustão dos recursos provocada por aumentos inesperados na demanda e reduzir o impacto de falhas em componentes não essenciais da workload.
Resultado desejado: ao implementar medidas de emergência, é possível estabelecer processos bem conhecidos para manter a disponibilidade dos componentes essenciais na workload. A workload deve se degradar normalmente e continuar desempenhando suas funções essenciais aos negócios durante a ativação de uma medida emergencial. Para obter mais detalhes sobre a degradação simples, consulte REL05-BP01 Implementar uma degradação simples para transformar dependências rígidas aplicáveis em dependências flexíveis.
Antipadrões comuns:
-
A falha de dependências não essenciais afeta a disponibilidade da workload principal.
-
Não testar ou verificar o comportamento dos componentes essenciais durante a deterioração de componentes não essenciais.
-
Não há critérios claros e determinísticos definidos para ativação ou desativação de uma medida emergencial.
Benefícios do estabelecimento desta prática recomendada: a implementação de medidas emergenciais pode melhorar a disponibilidade dos componentes essenciais na workload fornecendo aos resolvedores processos estabelecidos para responder a picos inesperados na demanda ou a falhas de dependências não essenciais.
Nível de exposição a riscos se esta prática recomendada não for estabelecida: médio
Orientações para a implementação
-
Identifique os componentes essenciais na workload.
-
Projete e arquitete os componentes essenciais na workload para resistirem à falha de componentes não essenciais.
-
Conduza testes para validar o comportamento dos componentes essenciais durante a falha de componentes não essenciais.
-
Defina e monitore métricas ou acionadores relevantes para iniciar procedimentos de medida emergencial.
-
Defina os procedimentos (manuais ou automatizados) que compõem a medida emergencial.
Etapas da implementação
-
Identificar os componentes essenciais aos negócios na workload.
-
Cada componente técnico na workload deve ser mapeado para a função de negócios relevante e classificado como essencial ou não essencial. Para obter exemplos de funcionalidades essenciais e não essenciais na Amazon, consulte Any Day Can Be Prime Day: How Amazon.com Search Uses Chaos Engineering to Handle Over 84K Requests Per Second
. -
Essa é uma decisão técnica e de negócios e varia de acordo com a organização e a workload.
-
-
Projete e arquitete os componentes essenciais na workload para resistirem à falha de componentes não essenciais.
-
Durante a análise de dependências, considere todos os possíveis modos de falha e verifique se os mecanismos de medida emergencial fornecem a funcionalidade essencial aos componentes subsequentes.
-
-
Conduza testes para validar o comportamento dos componentes essenciais durante a ativação das medidas emergenciais.
-
Evite o comportamento bimodal. Para obter mais detalhes, consulte REL11-BP05 Usar estabilidade estática para evitar o comportamento bimodal.
-
-
Defina, monitore e emita alertas sobre as métricas relevantes para iniciar o procedimento de medida emergencial.
-
A descoberta das métricas certas a serem monitoradas depende da workload. Alguns exemplos de métricas são a latência ou o número de solicitações com falha feitas para uma dependência.
-
-
Defina os procedimentos, manuais ou automatizados, que compõem a medida emergencial.
-
Isso pode incluir mecanismos como descarte de carga
, controle de utilização de solicitações ou implementação de degradação simples.
-
Recursos
Práticas recomendadas relacionadas:
Documentos relacionados:
Vídeos relacionados: