L'importanza di considerare le prestazioni

Completato

Le prestazioni di un'app sono importanti per mantenere gli utenti soddisfatti. Le app possono passare da mediocri a straordinarie in base alle prestazioni. In alcuni casi è possibile ottenere questo risultato con una semplice modifica come la memorizzazione nella cache dei dati di una raccolta o la rimozione di chiamate ridondanti all'origine dati.

Questo modulo contiene informazioni sui problemi comuni delle prestazioni, sui modi per attenuarne l'impatto e su come eseguire test per individuare i problemi.

Il collo di bottiglia più comune per le prestazioni: le origini dati

I problemi di prestazioni più comuni delle app sono causati dalle interazioni con le origini dati. Quasi tutte le app hanno una o più origini dati. Power Apps supporta in modo nativo più di 200 connessioni diverse alle origini dati e l'uso di queste connessioni è fondamentale per un'app di successo.

La chiamata di queste origini dati è spesso il più grande collo di bottiglia per l'app, a causa del tempo necessario per chiamare l'origine dati attraverso la rete, elaborare la richiesta sul lato dell'origine dati, restituire i dati a Power Apps attraverso la rete, quindi elaborare e visualizzare i dati in Power Apps. L'ottimizzazione di queste interazioni con le origini dati è fondamentale per ottenere prestazioni elevate. Nelle sezioni seguenti sono descritti alcuni degli errori più comuni.

Numero eccessivo di aggiornamenti

Tramite la funzione Refresh è possibile forzare Power Apps ad aggiornare i dati raccolti da un'origine dati specificata. Apparentemente è una funzione molto utile, perché consente di ottenere i dati più aggiornati nell'app. Tuttavia, spesso Power Apps gestisce automaticamente questo aggiornamento. Ad esempio, quando si usa un modulo per inviare un nuovo record a un'origine dati visualizzata in un controllo Raccolta, Power Apps aggiorna automaticamente la connessione. Se si include una funzione Refresh quando si passa alla schermata della raccolta, vengono aggiornati i dati che Power Apps ha già aggiornato. Questa operazione è ridondante e rallenta l'app senza motivo.

Nota

Non usare la funzione Refresh finché non si è certi che sia necessaria.

Numero eccessivo di ricerche

Quando si iniziano a usare dati relazionali (descritti nel percorso di apprendimento "Uso delle opzioni avanzate per i dati e dei connettori in Power Apps - Modulo 1: Uso dei dati relazionali in un'app canvas di Power Apps"), un errore comune è non considerare le implicazioni di una funzione LookUp all'interno di una raccolta. Quando si inserisce una funzione LookUp in un'etichetta all'interno della raccolta, la ricerca viene eseguita una volta per ogni record nella raccolta. Ciò significa che, se sono presenti 100 record nella raccolta, l'app deve eseguire 100 singole chiamate LookUp all'origine dati per eseguire il rendering. A seconda dell'origine dati, il rendering può richiedere diversi minuti. Un approccio migliore è visualizzare i dati correlati usando una schermata dei dettagli o usare una raccolta per memorizzare nella cache i dati dall'origine dati in modo da evitare di eseguire la ricerca attraverso la rete.

Nota

Prestare attenzione quando si effettuano chiamate aggiuntive a origini dati remote se si usano controlli che visualizzano più record.

Archiviazione dei dati nell'origine dati errata

Origini dati diverse sono ottimizzate per carichi di lavoro differenti: questo aspetto deve essere tenuto presente quando si sceglie la posizione in cui archiviare i dati. Un esempio è l'archiviazione di immagini o file. Un uso comune di Power Apps consiste nell'acquisire immagini usando il controllo Fotocamera o l'app della fotocamera incorporata nel dispositivo. Dopo che l'utente ha acquisito l'immagine, deve salvarla. Una possibilità consiste nell'archiviare l'immagine nello stesso database di SQL Server usato per gli altri dati dell'app. Anche se è possibile farlo, è importante notare che SQL Server è inefficiente per l'archiviazione di immagini. Le operazioni di scrittura e lettura di un file di immagine in un database SQL sono lente e causano il rallentamento dell'esecuzione dell'app. Un'opzione migliore consiste nell'archiviare le immagini di Power Apps in Archiviazione BLOB di Azure. La scrittura dei dati in Archiviazione BLOB di Azure è molto più veloce rispetto a SQL Server. Questa modifica di lieve entità alla struttura sottostante dell'app può avere un notevole impatto sulla soddisfazione degli utenti.

Nota

Scegliere l'origine dati ottimale per l'app in modo da ottenere le massime prestazioni.

Altre considerazioni sulle prestazioni

Anche se le origini dati possono essere i principali colli di bottiglia, esistono altre modifiche spesso trascurate che è possibile apportare per ottenere prestazioni ottimali. Altri problemi comuni includono:

  • Dimensioni degli asset: durante la progettazione dell'app è utile includere logo aziendali e altri asset visivi. Quando si aggiungono questi asset all'app, assicurarsi che siano ottimizzati per le dimensioni dell'app. Più alta è la risoluzione di un file, maggiore è la sua dimensione e più risorse saranno necessarie all'app per archiviare e visualizzare l'immagine. Usare uno strumento di modifica delle immagini per ridimensionare i file alle dimensioni necessarie per l'app.

  • Ripubblicazione dell'app: il team di Power Apps aggiorna continuamente Power Apps per offrire nuove funzionalità e migliorare le prestazioni. L'unico modo per sfruttare queste innovazioni è aprire l'app e pubblicarla di nuovo. Finché non si esegue questa operazione, l'app manterrà la versione con cui è stata pubblicata. Controllare periodicamente l'app per passare alla versione più recente garantisce le migliori prestazioni possibili.

  • Creazione di app per un ambito specifico: Power Apps supporta la creazione di app con un numero illimitato di schermate, ma non è consigliabile usarne un numero eccessivo. È opportuno creare app rivolte a specifici gruppi di destinatari e processi. Ciò consente di ottimizzare l'esperienza utente dei destinatari, semplifica la creazione e la risoluzione dei problemi dell'app e ne riduce le dimensioni. Se un'app viene usata per diverse attività, è consigliabile suddividerla in app più piccole in base al ruolo.

Ottimizzazione graduale delle prestazioni

Questo modulo descrive diverse tecniche e opzioni per l'ottimizzazione delle prestazioni. Prima di occuparsi dell'ottimizzazione dell'app, occorre tenere presente che la cosa più importante è che l'app funzioni. Un'app ad alte prestazioni che genera solo errori quando viene usata non è di alcuna utilità.

Spesso è più semplice sviluppare l'app in modo che raggiunga i suoi obiettivi e sia completamente funzionante. Quando l'app funziona, è poi possibile rivisitarla per individuare le modifiche che si possono apportare per migliorare le prestazioni, introducendole una alla volta per assicurarsi che non compromettano il funzionamento. Questa metodologia basata su piccole modifiche garantisce la maggiore percentuale di successo. Dopo avere acquisito familiarità con i diversi concetti relativi alle prestazioni, si imparerà a creare l'app integrando questi concetti fin dall'inizio. Nel frattempo l'obiettivo è creare un'app che funzioni e quindi procedere all'ottimizzazione.

Altre informazioni

Per integrare i concetti presentati in questo modulo, sono consigliate altre due letture per approfondire le conoscenze relative alle prestazioni.

Dopo aver esaminato i vantaggi dell'ottimizzazione delle prestazioni e alcuni dei problemi più comuni di cui tenere conto, nella parte restante di questo modulo verranno descritte le tecniche per incrementare le prestazioni e le procedure per usare i vari metodi per testare l'app.