Dela via


Lägga till cachelagring för att förbättra prestanda i Azure API Management

GÄLLER FÖR: Utvecklare | Grundläggande | Basic v2 | Standard | Standard v2 | Premium | Premium v2

API:er och åtgärder i API Management kan konfigureras med cachelagring av svar. Cachelagring av svar kan avsevärt minska svarstiden för API-anropare och serverdelsbelastning för API-leverantörer.

Viktigt!

Den inbyggda cachen är instabil och delas av alla enheter i samma region i samma API Management-tjänst. Oavsett vilken cachetyp som används (intern eller extern), om cacherelaterade åtgärder inte kan ansluta till cachen på grund av cachens obeständighet eller någon annan orsak, genererar API-anropet som använder den cacherelaterade åtgärden inte ett fel, och cacheåtgärden slutförs korrekt. När det gäller en läsåtgärd returneras ett null-värde till det anropande principuttrycket. Din principkod bör utformas för att säkerställa att det finns en återställningsmekanism för att hämta data som inte finns i cacheminnet. Mer detaljerad information om cachelagring finns i Principer för cachelagring för API Management och Anpassad cachelagring i Azure API Management.

principer för cachelagring

Detta får du får lära dig:

  • Lägg till cachelagring med svar för ditt API
  • Verifiera cachelagring i praktiken

Kommentar

Internt cacheminne är inte tillgängligt på nivån Förbrukning för Azure API Management. Du kan använda en extern Azure Cache for Redis istället. Du kan också konfigurera en extern cache på andra API Management-tjänstnivåer.

Förutsättningar

För att slutföra den här kursen behöver du:

Lägg till cachelagringsprinciperna

Med cachelagringsprinciper som visas i det här exemplet returnerar den första begäran till en teståtgärd ett svar från serverdelstjänsten. Svaret cachelagras och registreras av de angivna sidhuvudena och frågesträngsparametrarna. För efterföljande anrop till åtgärden, med matchande parametrar, returneras det cachelagrade svaret till cachlagringsintervallets slut.

  1. Logga in på Azure-portalen.

  2. Bläddra till din API Management-instans.

  3. Välj API:er>i menyn till vänster.

  4. Välj ett API som du vill konfigurera cachelagring för.

  5. Överst på skärmen väljer du fliken Design.

  6. I avsnittet Inkommande bearbetning väljer du <ikonen /> . Skärmbild av API Management-principredigeraren i portalen.

  7. Lägg till följande princip i elementet inbound :

    <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>
    
  8. Lägg till följande princip i elementet outbound :

    <cache-store duration="20" />
    

    I den här principen anger varaktighet förfallointervallet för cachelagrade svar. I det här exemplet är intervallet 20 sekunder.

Dricks

Om du använder en extern cache enligt beskrivningen i Använda en extern Azure Cache for Redis i Azure API Management kan det vara bra att ange attributet caching-type för cachelagringsprinciperna. Mer information finns i Principer för API Management-cachelagring.

Anropa en åtgärd och testa cachelagringen

Om du vill se hur cachelagringen fungerar anropar du en åtgärd från portalen.

  1. I Azure Portal bläddrar du till din API Management-instans.
  2. Välj API:er>i menyn till vänster.
  3. Välj det API där du har lagt till cachelagringsprinciper.
  4. Välj en åtgärd att testa.
  5. Välj fliken Test i den övre högra menyn.
  6. Välj Spåra två eller tre gånger i snabb följd.
  7. Under HTTP-svar väljer du fliken Spårning .
  8. Gå till avsnittet Inkommande och bläddra till cache-lookup principen. Du bör se ett meddelande som liknar det i följande skärmbild som anger en cacheträff: Skärmbild av cache-lookup när du testar ett API i portalen.