Adicionar caching para melhorar o desempenho no Gerenciamento de API do Azure

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.

cache policies

O que você aprenderá:

  • Adicionar o cache de resposta à sua API
  • Verificação do cache em ação

Disponibilidade

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.

Para ver a disponibilidade de recursos nas camadas v2 (versão prévia), consulte a visão geral das camadas v2.

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.

  1. Entre no portal do Azure.

  2. Navegue até sua instância de APIM.

  3. Selecione a guia API.

  4. Clique em API de Conferência de Demonstração na sua lista de APIs.

  5. Selecione GetSpeakers.

  6. Na parte superior da tela, selecione a guia Design.

  7. Na seção Processamento de entrada, clique no ícone </>.

    code editor

  8. 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>
    
  9. 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.

  1. No portal do Azure, navegue até sua instância do APIM.
  2. Selecione a guia APIs.
  3. Selecione a API para a qual você adicionou políticas de cache.
  4. Selecione a operação GetSpeakers.
  5. Clique na guia Teste no menu superior direito.
  6. Pressione Enviar.

Próximas etapas