Adicionar a colocação em cache para melhorar o desempenho na Gestão de API do Azure

APLICA-SE A: Developer | Básico | Básico v2 | Padrão | Padrão v2 | Prémio

APIs e operações no Gerenciamento de API podem ser configuradas com cache de resposta. A colocação em cache de respostas pode reduzir significativamente a latência dos autores de chamadas à API e a carga de back-end dos fornecedores 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á a ser utilizado (interno ou externo), se as operações relacionadas com a cache não ligarem à cache devido à volatilidade da cache ou a qualquer outro motivo, a chamada à API que utiliza a operação relacionada com a cache não gerará nenhum erro e a operação de cache será concluída com êxito. No caso de uma operação de leitura, será devolvido um valor nulo à 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 dados não encontrados no cache. Para obter informações mais detalhadas sobre a colocação em cache, veja Colocação em cache das políticas de Gestão de API e Colocação em cache personalizada na Gestão de API do Azure.

políticas de cache

O que irá aprender:

  • adicionar a colocação em cache de resposta para a API
  • verificar a colocação em cache em ação

Nota

O cache interno não está disponível na camada de Consumo do Gerenciamento de API do Azure. Em vez disso, você pode usar um Cache Redis do Azure externo. Você também pode configurar um cache externo em outras camadas de serviço de Gerenciamento de API.

Pré-requisitos

Para concluir este tutorial:

adicione as políticas de colocação em cache

Com as políticas de colocação em cache deste exemplo, o primeiro pedido efetuado à operação GetSpeakers devolve uma resposta do serviço de back-end. Esta resposta é colocada em cache, codificada pelos cabeçalhos e pelos parâmetros de cadeia de consulta especificados. Para as chamadas subsequentes à operação que tenham parâmetros correspondentes, será devolvida a resposta em cache, até que o intervalo de duração da cache expire.

  1. Inicie sessão no portal do Azure.

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

  3. Selecione o separador API.

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

  5. Selecione GetSpeakers.

  6. Na parte superior do ecrã, selecione o separador Design.

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

    editor de código

  8. No elemento 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 saída, adicione a seguinte política:

    <cache-store duration="20" />
    

    Duração especifica o intervalo de expiração das respostas em cache. Neste exemplo, o intervalo restante é de 20 segundos.

Gorjeta

Se você estiver usando um cache externo, conforme descrito em Usar um Cache do Azure externo para Redis no Gerenciamento de API do Azure, convém especificar o caching-type atributo das políticas de cache. Consulte Políticas de cache do Gerenciamento de API para obter mais detalhes.

Chamar uma operação e testar a colocação em cache

Para ver a colocação em cache em ação, chame a operação a partir do portal do programador.

  1. No portal do Azure, navegue para a instância APIM.
  2. Selecione o separador APIs.
  3. Selecione a API à qual adicionou as políticas de colocação em cache.
  4. Selecione a operação GetSpeakers.
  5. Clique no separador Teste no menu superior direito.
  6. Prima Enviar.

Passos seguintes