Esse princípio no pilar de confiabilidade do Google Cloud Well-Architected Framework fornece recomendações para ajudar você a projetar suas Google Cloud cargas de trabalho para falhar normalmente.
Esse princípio é relevante para a resposta área de foco da confiabilidade.
Visão geral do princípio
A degradação suave é uma abordagem de design em que um sistema que passa por uma carga alta continua funcionando, possivelmente com desempenho ou precisão reduzidos. A degradação suave garante a disponibilidade contínua do sistema e evita falhas completas, mesmo que o trabalho do sistema não seja ideal. Quando a carga retorna a um nível gerenciável, o sistema retoma a funcionalidade completa.
Por exemplo, durante períodos de carga alta, a Pesquisa Google prioriza resultados de páginas da Web com classificação mais alta, possivelmente sacrificando alguma precisão. Quando a carga diminui, a Pesquisa Google recalcula os resultados da pesquisa.
Recomendações
Para projetar seus sistemas para degradação suave, considere as recomendações nas subseções a seguir.
Implementar limitação
Garanta que suas réplicas possam processar sobrecargas de forma independente e limitar as solicitações recebidas durante cenários de tráfego intenso. Essa abordagem ajuda a evitar falhas em cascata causadas por mudanças no tráfego excessivo entre zonas.
Use ferramentas como a Apigee para controlar a taxa de solicitações de API durante períodos de tráfego intenso. É possível configurar regras de política para refletir como você quer reduzir as solicitações.
Descartar solicitações em excesso com antecedência
Configure seus sistemas para descartar solicitações em excesso na camada de front-end para proteger os componentes de back-end. O descarte de algumas solicitações evita falhas globais e permite que o sistema se recupere de maneira mais normal.Com essa abordagem, alguns usuários podem encontrar erros. No entanto, é possível minimizar o impacto de interrupções, ao contrário de uma abordagem como quebra de circuito, em que todo o tráfego é descartado durante uma sobrecarga.
Processar erros parciais e novas tentativas
Crie seus aplicativos para processar erros parciais e novas tentativas de maneira eficiente. Esse design ajuda a garantir que o máximo de tráfego possível seja veiculado durante cenários de carga alta.
Testar cenários de sobrecarga
Para validar se os mecanismos de limitação e descarte de solicitações funcionam de maneira eficaz, simule regularmente condições de sobrecarga no sistema. Os testes ajudam a garantir que o sistema esteja preparado para picos de tráfego reais.
Monitorar picos de tráfego
Use ferramentas de análise e monitoramento para prever e responder a picos de tráfego antes que eles se transformem em sobrecargas. A detecção e a resposta antecipadas podem ajudar a manter a disponibilidade do serviço durante períodos de alta demanda.