Estados, métricas e limiares de saúde

Concluído

Uma parte crucial da modelagem de integridade é quantificar estados íntegros, degradados e não íntegros para o aplicativo no contexto dos principais requisitos de negócios. O modelo semafórico é uma forma comum de representar estados de saúde.

  • Verde: Estado saudável. Os principais requisitos não funcionais são totalmente satisfeitos e os recursos são utilizados de forma otimizada.
  • Amarelo: Estado degradado. O aplicativo está operacional, mas a experiência do usuário pode ser afetada. A atenção de um administrador é necessária para mitigar esse estado.
  • Vermelho: Estado insalubre. O aplicativo não está funcionando ou funcionando conforme o esperado. Estados não íntegros afetam os usuários.

No modelo de integridade em camadas, comece a definir estados com fluxos de usuários na parte superior e vá para baixo para os recursos da plataforma. O diagrama a seguir mostra um exemplo de modelo de integridade em camadas. O diagrama demonstra como uma alteração no estado de integridade de um componente fundamental pode ter um impacto em cascata nos fluxos de usuários e na integridade geral do aplicativo:

Diagrama que mostra um modelo de saúde em camadas de amostra com estados de saúde em cascata.

Cada camada deve usar métricas e limites métricos para componentes para representar estados íntegros e não íntegros com base na funcionalidade do aplicativo e nos requisitos não funcionais. Defina estados de integridade para componentes com base em suas características operacionais distintas, estados estáveis e comportamentos esperados em uma carga de trabalho de produção.

Por exemplo, as métricas podem incluir o número de exceções, o tempo de resposta e as métricas de serviço. Os componentes de aplicativo podem ter dependências em recursos do Azure e até mesmo em outros componentes. Você precisa levar em conta esses estados de saúde.

Aqui estão algumas práticas recomendadas para calcular pontuações de saúde:

  • Represente os estados de integridade de um fluxo de usuário agregando pontuações granulares de integridade para componentes que participam do fluxo. Ele deve incluir o componente de aplicativo e todas as dependências mapeadas. Considere os principais requisitos não funcionais como coeficientes.
  • Represente a pontuação de integridade de um fluxo de usuário usando a pontuação mais baixa em todos os componentes mapeados. Fator de realização relativa em relação aos requisitos não funcionais para o fluxo de usuários.
  • Certifique-se de que as pontuações de integridade reflitam consistentemente a integridade operacional. Caso contrário, ajuste e reimplante o modelo para refletir novas informações.
  • Defina limites de pontuação de integridade para refletir o status de integridade de um componente.

Os testes de desempenho são fundamentais para estabelecer esses estados. A pontuação granular de integridade de componentes individuais é a principal métrica de nível de recurso. A tabela a seguir mostra um exemplo de como você pode usar métricas de recursos para definir estados de integridade:

Diagrama de uma tabela que mostra estados de integridade para um modelo de integridade em camadas.

No próximo exercício, quantificamos os estados de saúde para a aplicação de exemplo. O exercício ajuda a entender os valores esperados para uma carga de trabalho de produção padrão.

Verificação de conhecimento

1.

Qual camada está no nível mais alto na hierarquia do modelo de integridade?

2.

Ao selecionar métricas e limites, você precisa:

3.

Faz sentido ter estados degradados e insalubres no seu modelo de saúde?