Dati cache caricati dai componenti
Le prestazioni sono una delle caratteristiche principali delle app straordinarie. È accettabile che un'app richieda un momento per caricare i propri dati nella fase iniziale. Ma per poter essere percepita come rapida, l'app deve ridurre al minimo la quantità di dati che deve recuperare inizialmente. Inoltre, una volta che l'app ha recuperato i propri dati, deve memorizzarli nella cache per il tempo ragionevolmente necessario a mantenere dati aggiornati.
Ad esempio, supponiamo di voler visualizzare informazioni su una persona nella propria app:
Per mostrare queste informazioni, è necessario chiamare Microsoft Graph tre volte. Per prima cosa, si recuperano le informazioni sulla persona, poi la sua immagine e infine la sua presenza.
Ora supponiamo di voler visualizzare queste informazioni non per una ma per cinque persone. L'app deve eseguire 15 richieste. Se è necessario visualizzare informazioni sugli utenti in diversi posti dell'app (ad esempio per visualizzare messaggi, autori dei file o partecipanti alle riunioni), si potrebbero inviare chiamate per dati che sono già stati recuperati.
Per evitare di caricare dati che si hanno già, può essere utile creare un meccanismo di memorizzazione nella cache personalizzato. Prima di farlo, è consigliabile utilizzare invece Microsoft Graph Toolkit.
Configurare la cache per i componenti di Microsoft Graph Toolkit
I componenti di Microsoft Graph Toolkit memorizzano automaticamente nella cache i dati che recuperano. Se si ha bisogno di un'informazione in particolare nell'app, questa viene scaricata una sola volta e memorizzata nella cache fino alla sua scadenza. Per impostazione predefinita, Microsoft Graph Toolkit memorizza i dati nella cache per 1 ora. Le informazioni sulla presenza dell'utente vengono memorizzate nella cache per soli 5 minuti, perché la presenza tende a cambiare spesso.
È possibile controllare la cache a livello globale ma anche sostituire la configurazione per un carico di lavoro specifico, se necessario. Le impostazioni della cache sono esposte tramite la classe CacheService.
Per modificare la durata di memorizzazione nella cache per tutti i componenti, modificare il valore della proprietà defaultInvalidationPeriod:
import { CacheService } from '@microsoft/mgt';
// set cache expiration for all components to 30 minutes
CacheService.config.defaultInvalidationPeriod = 1800000;
Nota
Se si carica Microsoft Graph Toolkit da una rete per la distribuzione di contenuti, è possibile accedere alla configurazione CacheService tramite la variabile globale mgt, come segue:
<script src="https://unpkg.com/@microsoft/mgt@3/dist/bundle/mgt-loader.js"></script>
<script>
mgt.CacheService.config.defaultInvalidationPeriod = 1800000;
</script>
Per disattivare la cache per tutti i componenti, impostare la proprietà isEnabled su false:
import { CacheService } from '@microsoft/mgt';
// disable cache for all Microsoft Graph Toolkit components
CacheService.config.isEnabled = false;
Importante
Se si disattiva la cache per tutti i componenti in Microsoft Graph Toolkit, l'app potrebbe scaricare gli stessi dati più volte da Microsoft Graph. Questo avrà un impatto negativo sulle prestazioni dell'applicazione.
Per disattivare la memorizzazione nella cache dei dati delle persone da parte dei componenti, impostare la proprietà isEnabled della cache delle persone su false:
import { CacheService } from '@microsoft/mgt';
// disable people cache for all Microsoft Graph Toolkit components
CacheService.config.people.isEnabled = false;
Configurare la cache per il componente mgt-get
I componenti di Microsoft Graph Toolkit memorizzano i dati nella cache per carico di lavoro, come persone, foto o gruppi. Tale organizzazione della cache consente a un componente di caricare i dati e ad altri componenti di recuperarli dalla cache, senza eseguire richieste duplicate. L'unico componente che funziona diversamente è mgt-get.
Con il componente mgt-get, è possibile caricare e visualizzare qualsiasi dato di Microsoft Graph nella propria app. Dal momento che mgt-get può visualizzare solo dati arbitrati, dispone della sua propria cache, chiamata risposta. Come per qualsiasi altro oggetto della cache, è possibile configurare se la cache risposta è attivata e per quanto tempo vengono conservati i dati. La cache risposta non viene utilizzata da altri componenti di Microsoft Graph Toolkit.
Passaggi successivi
Per mettere in pratica ciò che si è appreso, modificare le impostazioni di configurazione dei componenti di Microsoft Graph Toolkit.