Compartilhar via


Compensações de eficiência de desempenho para cargas de trabalho Power Platform

Uma carga de trabalho que atinge suas metas de desempenho sem superprovisionamento é eficiente. As principais estratégias para eficiência de desempenho incluem o uso adequado de otimizações de código, padrões de design e planejamento de capacidade. Metas de desempenho claras e testes sustentam esse pilar.

Durante a fase de design de uma carga de trabalho, é importante considerar como as decisões baseadas nos princípios de design de eficiência de desempenho e recomendações na Lista de verificação de revisão de design para eficiência de desempenho podem influenciar as metas e os esforços de otimização de outros pilares. Certas decisões podem beneficiar alguns pilares, mas representar compensações para outros. Este artigo lista exemplos de compensações que uma equipe de carga de trabalho pode encontrar ao projetar a arquitetura e as operações da carga de trabalho para eficiência de desempenho.

Compensações de eficiência de desempenho com confiabilidade

Compensação: Replicação reduzida e densidade aumentada. Um dos pilares da confiabilidade é garantir a resiliência usando replicação e limitando o raio de explosão de mau funcionamento.

  • A consolidação de recursos de carga de trabalho pode usar o excesso de capacidade e melhorar a eficiência. No entanto, isso aumenta o raio de explosão de um mau funcionamento no componente ou plataforma de aplicação colocalizados.

Compensação: Maior complexidade. A confiabilidade prioriza a simplicidade.

  • O particionamento e a fragmentação de dados ajudam a evitar problemas de desempenho em conjuntos de dados grandes ou acessados com frequência. No entanto, a implementação desses padrões aumenta a complexidade porque a consistência (eventual) precisa ser mantida em recursos adicionais.

  • A desnormalização de dados para padrões de acesso otimizados pode melhorar o desempenho, mas introduz complexidade porque diversas representações de dados precisam ser mantidas sincronizadas.

  • Padrões de design de nuvem centrados no desempenho às vezes exigem a introdução de componentes adicionais. O uso desses componentes aumenta a área de superfície da carga de trabalho. Os componentes devem então ser confiáveis para manter toda a carga de trabalho confiável.

Tradeoff: Testes e observação em ambientes ativos. Evitar o uso desnecessário de sistemas de produção é uma abordagem de autopreservação para confiabilidade.

  • Testes de desempenho em ambientes ativos apresentam o risco de causar mau funcionamento devido às ações ou configurações de teste.

  • As cargas de trabalho devem ser instrumentadas com um sistema de monitoramento de desempenho de aplicativos (APM) que permita que as equipes aprendam com ambientes ativos. As ferramentas do APM são instaladas e configuradas no código do aplicativo ou no ambiente de hospedagem. O uso indevido, a ultrapassagem de limitações ou a configuração incorreta da ferramenta podem comprometer sua funcionalidade e manutenção, potencialmente prejudicando a confiabilidade.

Compensações de eficiência de desempenho com segurança

Compensação: Redução dos controles de segurança. Os controles de segurança são estabelecidos em várias camadas, às vezes de forma redundante, para fornecer defesa em profundidade.

Uma estratégia de otimização de desempenho é remover ou ignorar componentes ou processos que contribuem para atrasos em um fluxo, especialmente quando seu tempo de processamento não é justificado. No entanto, essa estratégia pode comprometer a segurança e deve ser acompanhada de uma análise de risco completa. Considere os exemplos a seguir:

  • Remover a criptografia em trânsito ou em repouso para melhorar as velocidades de transferência expõe os dados a possíveis violações de integridade ou confidencialidade.

  • Remover ou reduzir ferramentas de verificação ou inspeção de segurança para reduzir os tempos de processamento pode comprometer a confidencialidade, integridade ou disponibilidade dessas ferramentas proteger.

  • Remover regras de firewall dos fluxos de rede para melhorar a latência da rede pode permitir comunicação indesejada.

  • Minimizar a validação de dados para um processamento mais rápido pode comprometer a integridade dos dados, especialmente se as entradas forem maliciosas.

Compensação: Maior área de superfície de carga de trabalho. A segurança prioriza uma área de superfície reduzida e contida para minimizar vetores de ataque e reduzir o geranciamento de controles de segurança.

Padrões de design de nuvem centrados no desempenho às vezes exigem a introdução de componentes adicionais. Esses componentes aumentam a área de superfície da carga de trabalho. Os novos componentes devem ser protegidos, possivelmente de maneiras que ainda não sejam usadas no sistema, e muitas vezes aumentam o escopo de conformidade. Considere estes componentes comumente adicionados:

  • Apresentando vários métodos diferentes de manipulação de lógica de negócios, como fluxos de nuvem e plugins low-code, com base nos requisitos de desempenho de cada tarefa.

  • Descarregando o processamento para trabalhos em segundo plano ou até mesmo para computação do cliente.

Compensação: remoção da segmentação. O pilar Segurança prioriza uma segmentação forte para permitir controles de segurança detalhados e reduzir o raio de alcance.

Compartilhar recursos é uma abordagem para melhorar a eficiência. Aumenta a densidade para otimizar o uso da capacidade. Por exemplo, reutilizar plug-ins low-code em vários aplicativos Canvas e fluxos de nuvem. O aumento da densidade pode levar aos seguintes problemas de segurança:

  • Uma identidade de carga de trabalho compartilhada que viola o princípio do menor privilégio e obscurece trilhas de auditoria individuais em logs de acesso.

  • Controles de segurança de perímetro, por exemplo, regras de rede, que são reduzidos para cobrir todos os componentes colocalizados, dando aos componentes individuais mais acesso do que o necessário.

Compensações de eficiência de desempenho com excelência operacional

Compensação: Observabilidade reduzida. O monitoramento é necessário para fornecer uma carga de trabalho com alertas significativos e ajudar a garantir o sucesso do incidente resposta.

  • Reduzir o volume de log e métrico para reduzir o tempo de processamento gasto na coleta de telemetria em vez de outras tarefas reduz a observabilidade geral do sistema. Alguns exemplos da observabilidade reduzida resultante incluem:

    • Ele limita os pontos de dados que são usados para criar alertas significativos.
    • Isso leva a lacunas na cobertura das atividades do incidente resposta.
    • Ela limita a observabilidade em interações e limites sensíveis à segurança ou à conformidade.
  • Quando padrões de design de desempenho são implementados, a complexidade da carga de trabalho geralmente aumenta. Componentes são adicionados aos fluxos críticos. A estratégia de monitoramento de carga de trabalho e o monitoramento de desempenho devem incluir esses componentes. Quando um fluxo abrange vários componentes ou limites de aplicativos, a complexidade de monitorar o desempenho desse fluxo aumenta. O desempenho do fluxo precisa ser correlacionado entre todos os componentes interconectados.

Compensação: Maior complexidade nas operações. Um ambiente complexo tem interações mais complexas e uma maior probabilidade de impacto negativo de operações de rotina, ad hoc e de emergência.

  • Melhorar a eficiência do desempenho aumentando a densidade eleva o risco nas tarefas operacionais. Um erro em um único processo pode ter um grande raio de explosão.

  • À medida que os padrões de design de desempenho são implementados, eles influenciam procedimentos operacionais como backups, rotações de chaves e estratégias de recuperação. Por exemplo, o particionamento e a fragmentação de dados podem complicar tarefas de rotina quando as equipes tentam garantir que essas tarefas não afetem a consistência dos dados.

Compensação: Estresse cultural. A excelência operacional está enraizada em uma cultura de irrepreensibilidade, respeito e melhoria contínua.

  • A realização de análises de causa raiz de problemas de desempenho identifica deficiências em processos ou implementações que exigem correção. A equipe deve considerar o exercício uma oportunidade de aprendizado. Se os membros da equipe forem culpados pelos problemas, o moral pode ser afetado.

  • Processos rotineiros e ad hoc podem afetar o desempenho da carga de trabalho. Muitas vezes, é considerado preferível realizar essas atividades em horários de menor movimento. No entanto, horários de menor movimento podem ser inconvenientes ou estar fora do horário normal para os membros da equipe responsáveis ou qualificados nessas tarefas.

Compensações de eficiência de desempenho com otimização de experiência

Compensação: Menor envolvimento do usuário. O pilar Otimização da experiência prioriza experiências de usuário mais envolventes.

  • A otimização do desempenho prioriza o uso de recursos da plataforma em detrimento de personalizações, o que desprioriza componentes personalizados que poderiam levar a uma experiência do usuário mais envolvente.

  • A otimização do desempenho pode se concentrar muito na minimização da complexidade, o que desprioriza recursos para experiências de usuário mais envolventes, como componentes personalizados e integrações.

  • O desenvolvimento da interface do usuário geralmente é feito em iterações e ciclos de entrega mais rápidos, o que pode dificultar a melhoria contínua do desempenho.