everything fails, all the time
expressãonuvemcultura de operações
O axioma de nuvem de Werner Vogels: em escala suficiente, falha não é um evento, é condição permanente de fundo.
Com discos, links e instâncias em quantidade, sempre há algo quebrado - então a arquitetura precisa assumir isso: redundância, degradação graciosa, retentativas com backoff. A virada de mentalidade é de prevenir a falha para torná-la entediante.
A formulação de Werner Vogels é premissa de projeto, e não queixa. Todo componente vai falhar, a alguma taxa, e em escala suficiente essa taxa vira condição contínua em vez de evento ocasional: com máquinas suficientes, alguma coisa está sempre quebrada agora.
Esse reenquadramento muda para que serve um sistema. Se a falha é excepcional, a resposta sensata é preveni-la e tratar a exceção quando a prevenção falhar. Se a falha é constante, a prevenção não é a estratégia principal, e o sistema precisa continuar funcionando enquanto componentes falham, o que faz de verificação de saúde, substituição automática, novas tentativas, tempos limite e degradação graciosa funcionalidades centrais, e não tratamento de erro.
Isso também muda o que significa qualidade. Um projeto não é julgado por falhar ou não, e sim por como falha: se a falha é contida ou se propaga, se é visível, se a recuperação é automática, e se a falha de uma dependência degrada o serviço ou o remove. A engenharia do caos decorre diretamente disso, já que o único jeito de saber como um sistema se comporta sob falha é falhá-lo de propósito enquanto as pessoas observam, em vez de esperar para descobrir.