Dados do cache carregados por componentes
O desempenho é uma das principais características de ótimos aplicativos. É aceitável que um aplicativo reserve um momento para carregar seus dados inicialmente. Mas, para ser percebido como rápido, o aplicativo deve minimizar a quantidade de dados que precisa recuperar inicialmente. Além disso, depois que o aplicativo recuperar seus dados, ele deverá armazená-los em cache desde que seja razoável para que os dados permaneçam atualizados.
Por exemplo, suponha que você deseja exibir informações sobre uma pessoa em seu aplicativo:
Para mostrar essas informações, você precisaria chamar Microsoft Graph três vezes. Primeiro, você recuperaria as informações sobre a pessoa, depois a imagem e, por fim, a presença dela.
Digamos que você queira mostrar essas informações não para uma pessoa, mas para cinco pessoas. Seu aplicativo precisará executar 15 solicitações. Se você precisar mostrar informações sobre usuários em vários locais em seu aplicativo (por exemplo, para mostrar mensagens, autores de arquivo ou participantes da reunião), poderá emitir chamadas para dados que já foram recuperados.
Para evitar o carregamento de dados que você já tem, considere a criação de um mecanismo de cache personalizado. Mas antes de fazer isso, considere usar Microsoft Graph Toolkit.
Configurar o cache para Microsoft Graph do Kit de Ferramentas
Microsoft Graph componentes do Kit de Ferramentas armazenam em cache automaticamente os dados recuperados. Se você precisar de uma determinada informação em seu aplicativo, elas serão baixadas apenas uma vez e armazenadas no cache até que expirem. Por padrão, Microsoft Graph Toolkit armazena dados em cache por 1 hora. As informações sobre a presença do usuário são armazenadas em cache por apenas 5 minutos, porque a presença tende a alterar com frequência.
Você pode controlar o cache globalmente, mas também substituir a configuração de uma carga de trabalho específica, se necessário. As configurações de cache são expostas por meio da classe CacheService.
Para alterar a duração do cache para todos os componentes, altere o valor da propriedade defaultInvalidationPeriod
:
import { CacheService } from '@microsoft/mgt';
// set cache expiration for all components to 30 minutes
CacheService.config.defaultInvalidationPeriod = 1800000;
Observação
Se você carregar Microsoft Graph Toolkit de uma rede de distribuição de conteúdo, poderá acessar a configuração CacheService
por meio da variável de mgt
global, da seguinte maneira:
<script src="https://unpkg.com/@microsoft/mgt@3/dist/bundle/mgt-loader.js"></script>
<script>
mgt.CacheService.config.defaultInvalidationPeriod = 1800000;
</script>
Para desabilitar o cache para todos os componentes, defina a propriedade isEnabled
como false
:
import { CacheService } from '@microsoft/mgt';
// disable cache for all Microsoft Graph Toolkit components
CacheService.config.isEnabled = false;
Importante
Se você desabilitar o cache para todos os componentes Microsoft Graph Toolkit, seu aplicativo poderá baixar os mesmos dados várias vezes do Microsoft Graph. Isso terá um impacto negativo no desempenho do aplicativo.
Para desabilitar componentes do cache de dados de pessoas, defina isEnabled
propriedade do cache de pessoas como false
:
import { CacheService } from '@microsoft/mgt';
// disable people cache for all Microsoft Graph Toolkit components
CacheService.config.people.isEnabled = false;
Configurar cache para o componente mgt-get
Os componentes do Microsoft Graph Toolkit armazenam em cache seus dados por carga de trabalho, como pessoas, fotos ou grupos. Essa organização do cache permite que um componente carregue os dados e outros componentes para recuperá-los do cache, sem executar solicitações duplicadas. O único componente que funciona de forma diferente é mgt-get.
Com o componente mgt-get, você pode carregar e mostrar quaisquer dados do Microsoft Graph em seu aplicativo. Como mgt-get pode mostrar dados arbitrários, ele tem seu próprio cache chamado resposta. Como com qualquer outro objeto de cache, você pode configurar se o cache de resposta está habilitado e por quanto tempo ele deve manter os dados. O cache resposta não é usado por nenhum outro componente no Microsoft Graph Toolkit.
Próximas etapas
Vamos colocar o que você aprendeu em prática e alterar as definições de configuração para os componentes Microsoft Graph Toolkit.