Comprendere le fasi di esecuzione delle app canvas, il flusso di chiamata dei dati e il monitoraggio delle prestazioni

Quando viene aperta da un utente, l'app canvas completa queste fasi di esecuzione prima di visualizzare l'interfaccia utente. Mentre l'app viene caricata, si connette a diverse origini dati, ad esempio SharePoint, Microsoft Dataverse, SQL Server (locale), database SQL di Azure (online), Excel e Oracle.

In questo articolo, imparerai le diverse fasi di esecuzione, come un'app si connette alle origini dati e informazioni sugli strumenti che puoi utilizzare per monitorare le prestazioni.

Fasi di esecuzione nelle app canvas

Un'app canvas passa attraverso le seguenti fasi di esecuzione prima di mostrare l'interfaccia a un utente:

  1. Autentica l'utente: Richiede al primo utente di accedere con le credenziali per qualsiasi connessione richiesta dall'app. Se l'utente riapre l'app, è possibile che la richiesta venga di nuovo visualizzata, a seconda dei criteri di sicurezza dell'organizzazione.

  2. Ottieni i metadati: Recupera i metadati, ad esempio la versione della piattaforma Power Apps in cui viene eseguita l'app e le origini da cui deve recuperare i dati.

  3. Inizializza l'app: Esegue le attività specificate nella proprietà OnStart.

  4. Esegui il rendering delle schermate: esegue il rendering della prima schermata con i controlli che l'app popola con i dati. Se l'utente apre altre schermate, l'app ne esegue il rendering usando lo stesso processo.

Flusso di chiamate dati nelle app canvas

Le chiamate dati dalle app canvas inviano dati a origini dati tabulari utilizzando connettori sul protocollo OData. Le richieste OData vengono inviate ai livelli back-end per contattare l'origine dati di destinazione e recuperare i dati per il client oppure eseguire il commit dei dati su un'origine dati. I connettori basati su azioni che abilitano le API funzionano allo stesso modo.

La comprensione del modo in cui le richieste OData e API viaggiano nelle app canvas possono aiutarti a ottimizzare le prestazioni delle tue app canvas e le origini dati di backend.

In questa sezione vengono illustrati i flussi delle chiamate dati nelle app canvas con diversi tipi di origine dati.

Flusso di chiamate dati con origini dati online

Il diagramma seguente mostra come una tipica richiesta di dati in un'app canvas (sul lato sinistro) viaggia tra i livelli lato server e raggiunge l'obiettivo origine dati (sul lato destro) e quindi restituisce i dati al client.

Flusso di chiamate dati tipico per tutti i connettori tranne il connettore per Dataverse.

Ogni livello nel diagramma precedente può essere veloce o registrare alcuni sovraccarichi durante l'elaborazione della richiesta. In molte app, due punti particolari possono comunemente presentare sovraccarichi notevoli:

  • Backend origine dati: durante l'elaborazione della richiesta.

  • Client: durante l'invio della richiesta o durante la manipolazione dei dati ricevuti sulla memoria heap e l'esecuzione delle funzioni JavaScript associate per elaborare i dati da mostrare all'interno delle schermate.

Flusso di chiamate dati con locale gateway dati

Se un'app canvas si connette a un'origine dati locale come SQL Server, è necessario disporre di un altro livello, chiamato gateway dati locale. Questo gateway è obbligatorio per accedere alle origini dati locali. Si occupa della conversione delle richieste del protocollo OData in istruzioni SQL DML (Data Manipulation Language).

Il diagramma seguente mostra dove e come viene installato il gateway dati locale ed elabora le richieste di dati.

Flusso di chiamate dati per gateway dati locale.

Se l'app utilizza un origine dati locale, anche la posizione e le specifiche del gateway dati influiscono sulle prestazioni delle chiamate dati.

Flusso di chiamate dati con Microsoft Dataverse

Quando usi Microsoft Dataverse come origine dati, le richieste di dati vanno direttamente all'istanza dell'ambiente, senza passare per Gestione API di Azure. Di conseguenza, le prestazioni delle chiamate dati sono molto più veloci rispetto al resto delle origini dati. L'app viene collegata per impostazione predefinita a Microsoft Dataverse quando crei una nuova app canvas.

Flusso di chiamate dati con Microsoft Dataverse.

Una volta compreso questo concetto globale in relazione a come viaggiano le chiamate di dati, puoi entrare nel dettaglio dell'analisi delle prestazioni dell'app. Riepilogando, il sovraccarico delle prestazioni può verificarsi a qualsiasi livello: client, gestione API, connettore, gateway dati locale e origini dati back-end.

Misurazione delle prestazioni

Strumento di monitoraggio di Power Apps

Anche se puoi utilizzare gli strumenti per sviluppatori del browser per visualizzare le prestazioni, Power Apps crea set di chiamate secondari nello strumento di monitoraggio solo a quelle che lo sono in Power Apps.

Lo strumento di monitoraggio di Power Apps può aiutarti a tenere traccia di ciò che viene effettivamente inviato a un'origine dati e dei timestamp per quando le richieste vengono inviate e le risposte arrivano dal server.

Puoi scoprire di più sullo strumento di monitoraggio in questo articolo: Debug delle app canvas con Monitor .

Strumento di monitoraggio.

Misurazione della pressione della memoria sul client

Per visualizzare graficamente il consumo di memoria, puoi utilizzare gli strumenti di sviluppo del tuo browser per creare profili di memoria. Consentono di visualizzare dimensione dell'heap, documenti, nodi e listener. Crea il profilo delle prestazioni dell'app utilizzando un browser, come descritto in Microsoft Edge (Chromium) - Panoramica degli strumenti per sviluppatori. Verifica gli scenari che superano la soglia di memoria dell'heap JS. Maggiori informazioni: Risolvere i problemi di memoria

Grafico dell'utilizzo della memoria.

Passaggi successivi

Payload dei dati di piccole dimensioni

Vedi anche

Risoluzione dei problemi di distribuzione per Power Apps

Nota

Puoi indicarci le tue preferenze di lingua per la documentazione? Partecipa a un breve sondaggio. (il sondaggio è in inglese)

Il sondaggio richiederà circa sette minuti. Non viene raccolto alcun dato personale (Informativa sulla privacy).