Estados de integridade, métricas e limites

Concluído

Uma parte crucial da modelagem de integridade é quantificar estados íntegros, degradados e não íntegros do aplicativo no contexto dos principais requisitos comerciais. O modelo de semáforo é uma forma comum de representar estados de integridade.

  • Verde: estado íntegro. Os principais requisitos não funcionais foram totalmente atendidos e os recursos são utilizados de maneira ideal.
  • 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 atenuar esse estado.
  • Vermelho: estado não íntegro. O aplicativo não está funcionando ou não apresenta o desempenho o esperado. Os estados não íntegros afetam os usuários.

No modelo de integridade em camadas, comece a definir estados com fluxos de usuário no topo e vá descendo 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ário e na integridade geral do aplicativo:

Diagrama que mostra um modelo de integridade em camadas de exemplo com estados de integridade em cascata.

Cada camada deve usar métricas e limites de métrica para que os componentes representem estados íntegros e não íntegros com base na funcionalidade do aplicativo e nos requisitos não funcionais. Defina os estados de integridade dos componentes com base em 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 do aplicativo podem ter dependências dos recursos do Azure e até de outros componentes. Você precisa considerar esses estados de integridade.

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

  • Represente os estados de integridade de um fluxo de usuário agregando pontuações de integridade granulares para componentes que participam do fluxo. Isso deve incluir o componente do 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. Considere a obtenção relativa em relação aos requisitos não funcionais do fluxo de usuário.
  • Verifique se as pontuações de integridade refletem 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.

O teste de desempenho é fundamental para estabelecer esses estados. A pontuação de integridade granular de componentes individuais são as principais métricas no nível do recurso. A seguinte tabela mostra um exemplo de uso das métricas de recurso para definir estados de integridade:

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

No próximo exercício, quantificaremos os estados de integridade do aplicativo de exemplo. O exercício ajudará você a entender os valores esperados para uma carga de trabalho de produção padrão.

Verificação de conhecimentos

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 não íntegros no modelo de integridade?