Recomendações para otimização contínua do desempenho
Aplica-se a esta recomendação da lista de verificação de eficiência de desempenho bem arquitetada: Power Platform
Educação Física:10 | Otimize o desempenho continuamente. Concentre-se em componentes que apresentam desempenho deteriorado ao longo do tempo, como bancos de dados e recursos de rede. |
---|
Este guia descreve as recomendações para otimização contínua do desempenho. Otimização contínua de desempenho é o processo de monitoramento, análise e melhoria constantes da eficiência do desempenho. A otimização do desempenho precisa ser uma atividade contínua durante toda a vida útil da carga de trabalho. O desempenho da carga de trabalho pode piorar ou se tornar excessivo com o tempo. Os fatores a serem considerados incluem mudanças nos padrões de uso, aumento no armazenamento de dados, demanda, recursos e dívida técnica.
Definições
Termo | Definição |
---|---|
Dívida técnica | As ineficiências acumuladas, escolhas de design abaixo do ideal ou atalhos tomados intencionalmente durante o processo de desenvolvimento para entregar o código mais rápido. |
Tempo de vida | Um mecanismo que define um tempo de expiração para dados. |
Estratégias-chave de design
A eficiência de desempenho é alcançada quando a capacidade da carga de trabalho se alinha ao uso real. Uma carga de trabalho com desempenho superior é tão problemática quanto uma com desempenho inferior. As compensações são diferentes. O desempenho excessivo afeta a otimização de custos. O baixo desempenho afeta os usuários. A chave para a eficiência do desempenho é monitorar, ajustar e testar ao longo do tempo. Você precisa revisar regularmente as métricas de desempenho e fazer ajustes conforme necessário para garantir que a carga de trabalho seja eficiente. É necessário testar todas as mudanças antes e depois da implementação para atingir as metas de desempenho.
Desenvolver uma cultura de desempenho
Uma cultura de desempenho é um ambiente no qual se espera melhoria contínua e a equipe aprende com a produção. A otimização de desempenho requer habilidades especializado. As equipes de carga de trabalho precisam do habilidades e da mentalidade certos para otimizar seu desempenho e atender aos aumentos e diminuições na demanda. Você também precisa alocar o tempo deles para dar suporte ao monitoramento e à correção necessários de problemas de desempenho conforme eles surgirem. Essas equipes precisam de expectativas claras. Por exemplo, metas de desempenho, linhas de base e limites de desvio (quão longe da linha de base é aceitável) precisam ser altamente visíveis e socializados.
Compensação: Otimizações contínuas de desempenho exigem uma equipe que tenha o habilidades e o tempo certos para encontrar e corrigir problemas de desempenho. Dedicar pessoal ao desempenho aumenta o custo operacional. Se você tiver recursos de pessoal limitados, a otimização contínua do desempenho pode tomar tempo de outras tarefas operacionais.
Avalie novos recursos da plataforma
Avaliar novos recursos da plataforma envolve examinar as novas funcionalidades e recursos que podem melhorar a eficiência do desempenho, como formas otimizadas de consultar dados, controles modernos ou mecanismos de cache. Novos recursos de plataforma podem abrir caminhos para melhorar a eficiência do desempenho. Mantenha-se atualizado com os recursos da plataforma para garantir que você esteja usando as últimas inovações e melhores práticas. Monitore consistentemente o feedback e as métricas de desempenho dessas novas adições para refinar sua abordagem.
Priorizar esforços de otimização
Otimizar o desempenho proativamente significa tomar medidas para melhorar e aprimorar o desempenho da carga de trabalho antes que surjam problemas de desempenho. O uso de medidas proativas envolve identificar possíveis gargalos, monitorar métricas de desempenho e implementar otimizações para garantir que a carga de trabalho opere com eficiência e atinja as metas de desempenho desejadas. Com base na análise de componentes em deterioração, fluxos críticos e dívida técnica, você pode implementar otimizações de desempenho específicas para cada área. As melhorias podem envolver alterações de código, ajustes de infraestrutura ou atualizações de configuração.
Priorize os componentes em deterioração
À medida que a carga de trabalho evolui e os padrões de uso mudam, essas mudanças geralmente afetam o desempenho de componentes individuais na carga de trabalho. Mais dados em bancos de dados podem levar a tempos de execução de consulta mais longos e recuperação de dados mais lenta. Mudanças nos padrões de uso podem resultar em design de consulta abaixo do ideal. Consultas que antes eram eficientes podem se tornar ineficientes à medida que a carga de trabalho evolui. Consultas ineficientes podem consumir recursos excessivos e degradar o desempenho do banco de dados.
É importante fazer esforços contínuos para otimizar o desempenho dos componentes que apresentam desempenho reduzido ao longo do tempo. Identifique e resolva proativamente problemas de desempenho em sua carga de trabalho. Ao priorizar componentes conhecidos por deterioração, você pode abordar proativamente possíveis problemas de desempenho e garantir a operação tranquila da sua carga de trabalho. Considere implementar técnicas de ajuste de desempenho ou otimizar a alocação de recursos.
Priorizar fluxos críticos de usuários e sistemas
Os fluxos críticos de usuários e sistemas são os processos ou fluxos de trabalho mais importantes e de alta prioridade na carga de trabalho. Ao priorizar esses fluxos críticos, você garante que as partes mais essenciais da carga de trabalho sejam otimizadas para desempenho. Saber quais fluxos são críticos ajuda a priorizar os esforços de otimização. Otimizar a eficiência do desempenho das áreas mais importantes do seu aplicativo proporciona o maior retorno sobre o investimento. Você deve monitorar fluxos críticos e as partes mais populares do aplicativo. Procure maneiras de torná-los mais eficientes.
Automatize a otimização do desempenho
A automação pode eliminar processos manuais repetitivos e demorados, permitindo que eles sejam executados com eficiência. A automação reduz as chances de erro humano e garante consistência na execução de tarefas de otimização. Ao automatizar essas tarefas, você também pode liberar as pessoas para se concentrarem em atividades mais complexas e que agregam valor. Você pode aplicar automação a várias tarefas, como testes de desempenho, implantação e monitoramento.
Teste de desempenho automatizado : Use ferramentas de teste de desempenho automatizadas como o Selenium para simular diferentes cargas de trabalho e cenários. Power Apps O Test Engine é um componente dentro da Power Platform CLI que você pode usar para testar aplicativos canvas independentes em Power Apps.
Implantação automatizada : Implemente processos de implantação automatizados para garantir implantações consistentes e sem erros. Use ferramentas de CI/CD (integração contínua/entrega contínua) para automatizar o processo de implantação. Essas ferramentas podem ajudar você a identificar gargalos de desempenho ao usá-las para testar endpoints, verificar status HTTP e até mesmo validar a qualidade e as variações dos dados.
Monitoramento e alerta : Configure sistemas automatizados de monitoramento e alerta para monitorar continuamente as métricas de desempenho e detectar quaisquer desvios ou anomalias. Quando problemas de desempenho são detectados, alertas automatizados podem ser acionados para notificar as equipes ou indivíduos apropriados.
Gestão de incidentes : Implementar um sistema automatizado de geranciamento de incidentes que possa receber alertas, criar tickets e atribuir tickets às equipes apropriadas para resolução. Essas etapas ajudam a garantir que os problemas de desempenho sejam prontamente resolvidos e atribuídos aos recursos certos.
Diagnóstico automatizado : Desenvolver ferramentas ou scripts de diagnóstico automatizados que possam analisar dados de desempenho e identificar as causas raiz dos problemas de desempenho. Essas ferramentas podem ajudar a identificar áreas ou componentes específicos do sistema que estão causando problemas de desempenho.
Ações de correção automatizadas : Defina e implemente ações de correção automatizadas que podem ser acionadas quando problemas específicos de desempenho forem detectados. Essas ações podem incluir reiniciar serviços, ajustar a alocação de recursos, limpar caches ou implementar outras técnicas de otimização de desempenho.
Sistemas de autocura : Incorpore recursos de autocorreção ao seu sistema automatizando o processo de recuperação para problemas de desempenho conhecidos. Esse recurso pode envolver a correção ou o ajuste automático da configuração do sistema para restaurar o desempenho ideal.
Abordar dívida técnica
Dívida técnica refere-se às ineficiências acumuladas, escolhas de design abaixo do ideal ou atalhos tomados durante o processo de desenvolvimento que podem afetar o desempenho. Dívida técnica, código pouco claro e implementações excessivamente complexas podem tornar mais difícil atingir a eficiência de desempenho. Lidar com a dívida técnica envolve identificar e resolver esses problemas para melhorar o desempenho geral e a capacidade de manutenção da carga de trabalho. Esse trabalho pode incluir refatoração de código, otimização de consultas de banco de dados, melhoria de design arquitetônico ou implementação de práticas recomendadas. Talvez, por exemplo, você tenha introduzido uma dívida técnica para cumprir um prazo. Você precisará lidar com essa dívida técnica à medida que otimiza a eficiência do desempenho ao longo do tempo.
Otimizar bancos de dados
A otimização contínua de bancos de dados envolve identificar e implementar otimizações para garantir que os bancos de dados possam lidar com cargas, entregar tempos de resposta rápidos e minimizar a utilização de recursos. Ao otimizar regularmente os bancos de dados, você pode melhorar o desempenho do aplicativo, reduzir o tempo de inatividade e aprimorar a experiência geral do usuário.
- Otimize consultas de banco de dados: Consultas de banco de dados mal escritas podem degradar o desempenho do banco de dados. Filtros ineficientes podem causar processamento de dados desnecessário. Subconsultas complexas, consultas aninhadas e funções excessivas podem reduzir a velocidade de execução. Reescreva consultas que recuperam muitos dados. Identifique suas consultas de banco de dados mais comuns ou críticas e otimize-as. A otimização ajuda a garantir consultas mais rápidas.
- Revise o design do modelo: revise o modelo de dados para garantir que você o otimize para os requisitos específicos do aplicativo.
Facilitação do Power Platform
Automatizando a otimização de desempenho: O verificador de soluções fornece recomendações de desempenho com base em uma verificação de análise estática de suas soluções em relação a um conjunto de regras de práticas recomendadas para identificar rapidamente padrões problemáticos. Não deixe de revisar e seguir essas recomendações regularmente.
Monitoramento da otimização do desempenho: integre suas Power Platform cargas de trabalho com Application Insights para obter insights e recomendações para otimizar o desempenho.
Analise o desempenho e o uso do copiloto em Copilot Studio: O Copilot Analytics fornece uma visão geral abrangente do desempenho do seu copiloto. Ele usa tecnologia de inteligência artificial (IA) para identificar quais tópicos estão tendo o maior impacto na taxa de escalonamento, taxa de abandono e taxa de resolução. Acompanhar as taxas de envolvimento das conversas e os resultados é essencial para medir as métricas de desempenho do copiloto e descobrir áreas para melhorias. ... ...
Lista de verificação Eficiência de Desempenho
Consulte o conjunto completo de recomendações.