Adicionar caching para melhorar o desempenho no Gerenciamento de API do Azure
APLICA-SE A: Desenvolvedor | Básico | Básico v2 | Standard | Standard v2 | Premium
As APIs e operações no Gerenciamento de API podem ser configuradas com cache de resposta. O cache de resposta pode reduzir significativamente a latência para chamadores de API e a carga de back-end para provedores de API.
Importante
O cache interno é volátil e compartilhado por todas as unidades na mesma região, no mesmo serviço de Gerenciamento de API. Independentemente do tipo de cache que está sendo usado (interno ou externo), se as operações relacionadas ao cache não se conectarem ao cache devido à volatilidade do cache ou qualquer outro motivo, a chamada à API que usa a operação relacionada ao cache não gerará um erro e a operação de cache será concluída com êxito. No caso de uma operação de leitura, um valor nulo é retornado à expressão de política de chamada. Seu código de política deve ser projetado para garantir que haja um mecanismo de "fallback" para recuperar os dados não encontrados no cache. Para saber mais sobre o cache, consulte políticas de Armazenamento em cache do Gerenciamento de API e Armazenamento em cache personalizado no Gerenciamento de API do Azure.
O que você aprenderá:
- Adicionar o cache de resposta à sua API
- Verificação do cache em ação
Observação
Cache interno não está disponível na camada de Consumo do Gerenciamento de API do Azure. Você pode usar um Cache do Azure para Redis externo em vez disso. Você também pode configurar um cache externo em outros níveis do Gerenciamento de API.
Pré-requisitos
Para concluir este tutorial:
Adicionar as políticas de cache
Com as políticas de armazenamento em cache mostradas neste exemplo, a primeira solicitação feita à operação GetSpeakers retorna uma resposta do serviço de back-end. Esta resposta será armazenada em cache, com uma chave de acordo com os parâmetros de cadeia de consulta e cabeçalhos especificados. Chamadas subsequentes para a operação, com parâmetros correspondentes, retornarão respostas em cache até que o intervalo de duração de cache expire.
Entre no portal do Azure.
Navegue até sua instância de APIM.
Selecione a guia API.
Clique em API de Conferência de Demonstração na sua lista de APIs.
Selecione GetSpeakers.
Na parte superior da tela, selecione a guia Design.
Na seção Processamento de entrada, clique no ícone </>.
No elemento de entrada, adicione a seguinte política:
<cache-lookup vary-by-developer="false" vary-by-developer-groups="false"> <vary-by-header>Accept</vary-by-header> <vary-by-header>Accept-Charset</vary-by-header> <vary-by-header>Authorization</vary-by-header> </cache-lookup>
No elemento de saída, adicione a seguinte política:
<cache-store duration="20" />
Duração especifica o intervalo de vencimento das respostas armazenadas em cache. Neste exemplo, o intervalo restante é de 20 segundos.
Dica
Se você estiver usando um cache externo, conforme descrito em Uso de um Cache do Azure para Redis externo no Gerenciamento de API do Azure, poderá especificar o atributo caching-type
das políticas de cache. Para obter mais detalhes, consulte Políticas de caching do Gerenciamento de API.
Chamar uma operação e testar o cache
Para ver o cache em funcionamento, chame a operação por meio do portal do desenvolvedor.
- No portal do Azure, navegue até sua instância do APIM.
- Selecione a guia APIs.
- Selecione a API para a qual você adicionou políticas de cache.
- Selecione a operação GetSpeakers.
- Clique na guia Teste no menu superior direito.
- Pressione Enviar.
Próximas etapas
- Para saber mais sobre as políticas de cache, veja Políticas de cache na Referência de política do Gerenciamento de API.
- Para saber mais sobre itens de cache por chave usando expressões de política, confira Cache personalizado no Gerenciamento de API do Azure.
- Para obter mais informações sobre como usar o Cache do Azure para Redis externo, confira Usar um Cache do Azure para Redis externo no Gerenciamento de API.