Partilhar via


Compreender informações (pré-visualização)

[Este tópico é documentação de pré-lançamento e está sujeito a alterações.]

As informações de desempenho distribuem informações pelas seguintes categorias:

Desempenho geral

Estas informações resumem o desempenho global da sua aplicação como um resumo executivo sob o Insight ID Perf.Summary.Overview.

Nestas informações, pode ver o desempenho geral da sua aplicação com base na gravidade.

  • Crítico: Indica mau desempenho.
  • Aviso: Indica que o desempenho pode ser melhorado.
  • Informativo: Indica um bom desempenho.

Como melhorar

Quando chegar a hora de otimizar a aplicação, pode olhar para as informações detalhadas do cliente, rede, categorias de personalização, bem como plugins, saveQeury e configurações. Alguns itens acionáveis podem ser derivados através da revisão dessas informações.

Ambiente do cliente

Quando os utilizadores experimentam uma aplicação do Power Apps nos seus dispositivos, vários fatores podem afetar o desempenho, como o tipo de navegador, a versão do navegador e a especificação do hardware. Nesta secção, pode ver que informações verificam os ambientes dos clientes.

Tipo de browser

ID das informações: perf.environment.client.browser.type

Motivação

Certos tipos de browsers da Web podem ter impacto no desempenho da sua aplicação. A utilização de browsers não suportados ou antigos pode levar a um desempenho lento. Estas informações fornecem as implicações de desempenho de diferentes browsers, especialmente dos não recomendados. Por exemplo, Power Apps preteriu o seu apoio do Internet Explorer.

Como melhorar

Se tiver utilizadores em browsers, como o Internet Explorer, mude para um browser moderno baseado no Chromium. Recomendamos que os utilizadores executem um browser moderno, como o Microsoft Edge ou o Google Chrome.

Nota

Algumas aplicações antigas que alavancam a NPAPI só funcionarão no Internet Explorer.

Versão do browser

ID das informações: Perf.Environment.Client.Browser.Version

Motivação

Estas informações verificam quantos utilizadores estão a usar a sua aplicação a partir de uma versão antiga de um browser. Mesmo quando os utilizadores executam browsers modernos, e não tipos de browser não recomendados como o Internet Explorer, as versões mais antigas dos browsers executam mais lentamente.

Como melhorar

Os utilizadores devem atualizar regularmente o browser para a versão mais recente. Os clientes empresariais podem aplicar uma política de grupo para estarem numa versão específica. Uma vez que o Unified Service Desk (USD) também utiliza a configuração padrão do browser do computador, também requer a verificação do tipo e versão padrão do browser.

Requisitos mínimos do sistema

ID das informações: Perf.Environment.Device.MimimumRequirements

Motivação

Esta informação verifica se o ambiente do utilizador cumpre os requisitos mínimos do sistema. Pode verificar os requisitos da aplicação web para ver quais são os requisitos mínimos do sistema dependendo do tipo de aplicação.

Em geral, algumas atividades como composição, scripting e download de conteúdos acontecem do lado do cliente. O cumprimento dos requisitos mínimos do sistema é necessário para tais atividades.

Como melhorar

Os utilizadores devem utilizar o hardware que satisfaça ou exceda os requisitos mínimos do sistema para o Power Apps.

Protocolo HTTP

ID das informações: Perf.Environment.Client.Browser.HttpProtocol

Motivação

A plataforma do Power Apps suporta HTTP/2. No entanto, se a sua aplicação estiver a utilizar o protocolo HTTP/1.1 para pedidos de XMLHttpRequest (XHR) no Power Apps, isso poderá causar um desempenho lento devido à limitação simultânea de pedidos com o protocolo HTTP/1.1.

Como melhorar

Se esta informação identificou alguns utilizadores que estão a utilizar o protocolo HTTP/1.1, recomendamos vivamente que o cliente deste utilizador suporte o protocolo HTTP/2.

Várias configurações e infraestruturas de rede podem bloquear o protocolo HTTP/2, como uma rede VPN, servidor proxy ou configurações de opções de Internet do dispositivo.

Os utilizadores podem verificar que protocolo foi usado a partir de uma ferramenta de desenvolvimento incluída no browser. Na figura abaixo, as chamadas de rede ocorreram em HTTP/2.

Exemplo de chamadas de rede HTTP 2.

Se o rastreio do protocolo de rede indicar HTTP/1.1, pode ser devido ao seguinte:

  • Definições da Internet: O separador Avançado da Opção Internet do Windows no Painel de controlo Utilização HTTP2 e as opções de Utilização TLS 1.2 não estão ativadas.
  • VPN e proxy: Embora a Opção de Internet do Windows esteja definida para usar HTTP2 e TLS 1.2, o browser pode recuar quando um VPN ou Proxy não suporta os protocolos mais recentes.

Padrão de utilização

Esta categoria analisa o tipo de cargas de página. Uma carga de página quente torna a página pesada usando caches e objetos DOM existentes, enquanto uma carga de página fria refresca a página baixando recursos quando necessário. Embora os utilizadores não distingam o tipo de carga de página, esta informação analisa e fornece recomendações dependendo do tipo de cargas de página que ocorrem no cliente.

Tipo de carga da página

ID das informações: Perf.Performance.PageLoadType

Motivação

As cargas de página quente são mais rápidas do que as cargas de página fria, uma vez que os recursos necessários descarregam fora dos caches locais.

Nota

Quando um utilizador abre um formulário a partir de um novo separador ou novo separador num browser, é considerado uma carga de página fria. Quando um utilizador abre outros formulários na aplicação dentro do separador ativo de um navegador, é considerado uma carga de página quente.

Como melhorar

Para experimentar cargas de página quente para um desempenho mais rápido, minimize a abertura de novos separadores ou janelas do browser. Tente manter as atividades dentro de um único separador em vez de abrir novos separadores ou janelas do browser. Recomendamos também que não execute o browser no modo InPrivate ou incógnito.

Desempenho da página

Muitas aplicações condicionadas por modelos da primeira parte consistem num dashboard, vistas (EntityList) e formulário quando se trata do tipo de página. Por predefinição, os utilizadores carregam um dashboard, embora os criadores e administradores de aplicações possam alterá-lo. Se um dashboard contiver muitos gráficos e mosaicos, pode fazer com que o dashboard carregue lentamente. Da mesma forma, personalizar o EntityList e os formulários para adicionar muitas colunas e exibir muitos registos também pode fazer com que a página carregue lentamente. Assim, verificar o desempenho por página e por tabela pode ser benéfico porque o desempenho da carga da página pode ter causas de raiz diferentes.

Nesta secção, pode ver várias informações relacionadas com o desempenho da página.

Dashboards lentos

ID das informações: perf.modelDriven.page.dashboard.SlowSQLQuery

Motivação

Consultas lentas de SQL ou usar demasiados gráficos e mosaicos num dashboard pode causar o mau desempenho do dashboard. Estas informações apontam para os dashboards que são afetados por consultas lentas de SQL. Quando esta informação é gravada, o painel de Detalhes inclui o ID do dashboard para cada dashboard incluído na informação.

Como melhorar

Aqui está como procurar o nome do dashboard usando o ID do dashboard. Em seguida, pode determinar que dashboards considerar para redesenhar.

  1. Aceda à sua aplicação condicionada por modelo, tal como https://contoso.crm.dynamics.com.

  2. Modifique o URL conforme apresentado neste exemplo (https://contoso.dynamics.com/api/data/v9.1/systemforms[DashboardId]/name) adicionando api/data/v9.1/systemforms[DashboardId]/name ao URL da aplicação.

  3. Irá receber um pedido OData semelhante ao que se encontra abaixo. O Dashboard do agente apresentado abaixo representa o nome amigável do utilizador do iD do dashboard.

    {"@odata.context":https://contoso.crm.dynamics.com/api/data/v9.1/$metadata#systemforms(2ff4a8cf-378b-e811-a964-000d3a30dc0a)/name,"value":"Contoso - Agent Dashboard"}

Plug-ins síncronos com chamadas externas lentas

ID das informações: Perf.Sandbox.Performance.Plug-ins.ExternalCall

Os plug-ins e as atividades de fluxo de trabalho personalizado podem aceder a serviços web (pontos finais externos) através de protocolos HTTP e HTTPS. Se estes serviços externos funcionarem lentamente, o plug-in vai ficar sem tempo ou lentamente.

Motivação

Esta informação verifica o desempenho dos pontos finais externos e deteta plug-ins na sua aplicação que são impactados pelas chamadas externas lentas.

Como melhorar

Mais informações: Acesso a serviços web externos (Microsoft Dataverse) - Power Apps | Microsoft Docs.

Personalização

Os fabricantes podem fazer muitas personalizações diferentes com aplicações condicionadas por modelo, como:

  • Ingerir funções JavaScript personalizadas para ativar eventos no cliente.
  • Compilar e implementar plug-ins usados para executar lógicas personalizadas.
  • Defina e armazene tabelas e dados personalizados.
  • Defina componentes dependentes para tabelas personalizadas e padrão, como formulários e vistas.

Do ponto de vista do desempenho, todas estas personalizações podem causar uma fraca resposta da aplicação em situações em que a personalização não segue as melhores práticas e recomendações. Os fabricantes podem executar o Solution Checker para validar as suas personalizações durante a fase de desenvolvimento.

As seguintes informações também fornecem resultados analíticos fora do tempo de execução dos dados do utilizador da sua personalização.

Tipo de chamada (XHR) Pedido XML HTTP

ID das informações: Perf.ModelDriven.Customization.Client.Script.XMLHttpRequestType

As chamadas sincronizadas de XMLHttpRequest podem causar graves problemas de desempenho aos utilizadores finais, especialmente quando a rede está lenta ou há várias chamadas que precisam de ser feitas. O browser congela e o utilizador final fica frustrado quando não consegue clicar, deslocar ou interagir com a página.

Esta informação revela se existem métodos sincronizados e indica o desempenho relacionado.

Motivação

As chamadas XHR síncronas impedirão o browser de realizar mais trabalho, uma vez que o browser deve aguardar que a chamada síncrona esteja concluída, fazendo com que a página abrande ou congele completamente.

Como melhorar

Recomendamos que altere os métodos de topo mencionados na Secção de Dados da informação de síncronos para assíncronos. Mais informações: Carregue rapidamente as suas aplicações condicionadas por modelos, transferindo-se para longe de pedidos síncronos

Controlos preteridos

ID das informações: Perf.Customization.Controls.Depreceed

Alguns controlos mais antigos para aplicações condicionadas por modelos como Flip Switch, Calendar Control (V1), Linear Controlo de deslize, Radial Knob, Arc Knob, Linear Gauge; juntamente com o controlo de pré-visualização do site, o MultiSelectPicklistControl (V1) e o Flip Label são preteridos. Alguns destes controlos podem ser substituídos pelos novos controlos, que estão mais em consonância com a web moderna e o móvel em mente. Mais informações: Controlos de aplicações condicionadas por novos modelos, desvalorização de controlos antigos

Motivação

A utilização de controlos desatualizados pode causar problemas de desempenho, fiabilidade e acessibilidade. Além disso, algumas das limitações destes controlos preteridos foram resolvidas com os novos controlos. Por exemplo, o controlo Botão de alternar e o controlo Calendário (V2) utilizam o Microsoft Fluent UI.

Como melhorar

  • Utilize o controlo Botão de alternar como substituto do Flip Label e do Flip Switch.
  • Utilize o Controlo do Calendário (V2) como substituto do Controlo do Calendário (V1).
  • Avalie outros controlos preteridos para determinar se ainda são úteis dentro dos formulários existentes.

Note que existem poucas alterações significativas de design entre a versão preterida e os novos controlos.

Para obter mais informações sobre os controlos preteridos, aceda à desvalorização de controlos de aplicações condicionadas por modelo.

Desempenho do Sandbox - plug-ins dominantes

ID das informações: Perf.Sandbox.Performance.Plug-ins.Dominant

Esta informação vai ajudar-nos a identificar o plug-in dominante, ou por outras palavras, o que é mais utilizado. Também indicará se algum dos plug-ins usados de forma dominante executou lentamente com um tempo de execução de plugin superior a 100 milissegundos no percentil 95º. Estas informações irão listar até três plug-ins dominantes.

Motivação

Plug-ins dominantes lentos afetam o desempenho. Estes plug-ins devem ser investigados.

Como melhorar

Investigue os plug-ins de desempenho lento. Confira as melhores práticas relativas ao desenvolvimento de plug-in e fluxo de trabalho.

Para investigar mais aprofundadamente o plug-in lento, pode definir as definições de Registo de rastreio de plug-in como Todas no seu ambiente de desenvolvimento ou teste e determinar onde está o atraso. No entanto, não se esqueça de desativar a configuração antes de ir para a produção. Mais informações: Rastreio e registo

Investigue os plug-ins de desempenho lento. Algumas das razões para os plug-ins lentos são descritas aqui:

  • As consultas SQL associadas tiveram um desempenho lento, daí o tempo de execução plug-in maior.
  • Siga o princípio da responsabilidade única pelo seu plug-in e não faça transações com limites significativos de transações.
  • O plug-in pode estar a fazer algumas chamadas externas, que são lentas.
  • A lógica do plug-in não está otimizada para ambientes multi-tarefas. Verifique o código.

Para investigar mais aprofundadamente o plug-in lento, pode definir as definições de Registo de rastreio de plug-in como Todas no seu ambiente de desenvolvimento ou teste e determinar onde está o atraso. Não se esqueça de desativar a configuração antes de ir para a produção. Mais informações: Rastreio e registo

Consulta guardada com wildcard à esquerda

ID das informações: Perf.ModelDriven.Customization.SavedQuery.LeadingWildCard

Os wildcards à esquerda são condições gosto ou não gosto que usam um wildcard (%) no início de uma cadeia de pesquisa. Um exemplo de um pedido mal escrito é:

<fetch version="1.0" output-format="xml-platform" mapping="logical"> 
    <entity name="account"> 
        <attribute name="accountid" /> 
        <attribute name="accountnumber" /> 
        <filter type="and"> 
            <condition attribute="accountnumber" operator="like" value="%124" /> 
        </filter> 
    </entity> 
</fetch>

Motivação

Um caráter wildcard à esquerda (%) numa consulta guardada pode fazer com que a consulta seja interrompida ou executada lentamente. Estas informações apontam para essas consultas lentas e guardadas com os wildcards à esquerda.

Como melhorar

Evite utilizar wildcards à esquerda. Na tecla de pesquisa, estas são traduzidas para "contém" no SQL Server, o que não tirará partido da procura de índice, mas fará uma análise. Se for necessário utilizar um wildcard à esquerda, limite o âmbito de pesquisa incluindo outras condições. Note que é normal usar wildcards de rastreio (%) no final das cadeias de pesquisa.

Configuração

Definição de registo de rastreio de plug-ins

ID das informações: Perf.Sandbox.Configuration.PluginTraceSettings

Os fabricantes podem depurar os seus plug-ins através de registos de rastreio de plug-ins. Os administradores do Dataverse podem definir o plug-in e personalizar o rastreio da atividade de fluxo de trabalho para Desligado, Exceção ou Tudo.

Definições de registo de rastreio de plug-ins.

Motivação

O registo de ratreio de plug-in deve ser definido para Tudo apenas quando estiver a depurar ou a ajustar o plug-in. Um grande volume de registo de rastreio pode causar sobrecarga de I/O com o SQL Server. Além disso, a eliminação do registo de rastreio de plug-in pode causar bloqueios ou esperas no SQL Server.

Como melhorar

Na sua instância de produção se esta definição for Tudo e o volume de registos gerados pelo seu plugin for elevado, então considere mudá-lo para Exceção.

Para alterar a definição, aceda ao separador Definição > Administração > Definições do sistema > Personalização. Mais informações: Registo e rastreio

Rede

Desempenho da rede

A latência e o débito são fatores importantes que afetam a experiência do utilizador final. Os utilizadores com alta latência e baixo débito terão mais probabilidades de experimentar um desempenho lento ao acederem à Interface Unificada. Estas informações dizem-nos quantos utilizadores estão numa rede de fraco desempenho e como foi o seu desempenho.

Motivação

A má configuração da rede afetará o desempenho da aplicação.

Como melhorar

Se houver muitos utilizadores na rede e o desempenho for fraco, recomendamos que os utilizadores mudem para uma rede de melhor desempenho.

Consulte também

O que são informações de desempenho?