O que é a modelagem de integridade?
Para determinar se o ambiente está funcionando conforme o esperado, é importante monitorar a integridade do aplicativo e as principais métricas dos recursos do Azure que ele usa. A modelagem de integridade é um exercício de design que aumenta os logs de dados brutos e as métricas com os principais requisitos de negócios. A meta é quantificar a integridade do aplicativo e promover a avaliação automatizada dos estados de integridade.
Vantagens da modelagem de integridade
Para avaliar a integridade geral da carga de trabalho, você precisa de uma compreensão abrangente de todas as métricas. Você também precisa identificar e resolver problemas de confiabilidade rapidamente.
A modelagem de integridade se concentra na instrumentação e no monitoramento completos, mas também adiciona uma camada de contexto para oferecer insights críticos sobre a integridade do aplicativo. Um modelo de integridade bem projetado deve indicar claramente a integridade geral da carga de trabalho em vez de métricas de dados brutos.
Espera-se que aplicativos críticos, devido à sua natureza complexa, gerem grandes volumes de dados operacionais. Pode ser difícil avaliar o estado de integridade do aplicativo e descobrir a ação certa para resolver os problemas identificados.
O modelo de integridade usa indicadores de conjunto para representar o status de integridade. Portanto, é intuitivo entender e responder rapidamente a problemas que possam surgir. O status de integridade costuma ser apresentado usando indicadores de semáforo, como verde, amarelo e vermelho. Você pode rastrear as pontuações de integridade do aplicativo para localizar rapidamente a causa raiz da degradação do serviço.
Como começar
Para fazer o exercício de modelagem de integridade, você precisa ter uma compreensão profunda do sistema e do desempenho esperado. Um modelo em camadas é recomendado para refletir a integridade geral do aplicativo e em um nível granular. As camadas representam a estrutura de carga de trabalho hierárquica que inclui o aplicativo e as dependências.
- Na camada superior, a integridade representa a interação do usuário ou os fluxos dentro do aplicativo. Pense nos fluxos que estão no caminho crítico e nos que não estão.
- Em camadas inferiores, a integridade dos componentes individuais do aplicativo precisa ser definida considerando os principais requisitos não funcionais. Mapeie as dependências entre componentes funcionais e lógicos. Além disso, mapeie as dependências entre os recursos do Azure que os componentes do aplicativo usam.
- Na camada fundamental, a integridade representa os recursos do Azure, que são usados pelo aplicativo.
O processo de modelagem de integridade é uma atividade de design de cima para baixo que começa definindo todos os fluxos de usuário, mapeando dependências e quantificando os estados de integridade dos fluxos.
Estas são as etapas recomendadas para a abordagem:
- Quantificar os estados de integridade de cada componente para que cada componente indique uma pontuação de integridade. A pontuação de integridade pode ser uma agregação de várias métricas de desempenho considerando os principais requisitos de negócios.
- Quantificar os estados de integridade de cada fluxo combinando a pontuação de integridade de componentes individuais para indicar a integridade do fluxo. Fatore os requisitos não funcionais para definir o contexto em termos de criticidade.
- Com base na criticidade dos negócios, aplique os pesos apropriados em todas as camadas para criar uma definição significativa de integridade geral. Por exemplo, na camada superior, fluxos financeiramente significativos e fluxos de usuário voltados ao cliente são mais importantes do que outros.
Esta imagem mostra um exemplo de resultado da abordagem anterior. O modelo de integridade usa essas definições de integridade em camadas para informar métricas críticas de monitoramento em todos os componentes do sistema e validar a composição do subsistema operacional.
No próximo exercício, aplicamos o processo de alto nível a um exemplo e criamos um modelo de integridade em camadas.
Para obter mais informações sobre modelos de integridade em camadas, confira Integridade do aplicativo em camadas. Além disso, confira um exemplo de modelo de integridade em camadas.