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.
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.
Logga in på Azure-portalen.
Bläddra till din API Management-instans.
Välj API:er>i menyn till vänster.
Välj ett API som du vill konfigurera cachelagring för.
Överst på skärmen väljer du fliken Design.
I avsnittet Inkommande bearbetning väljer du <ikonen /> .
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>
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.
- I Azure Portal bläddrar du till din API Management-instans.
- Välj API:er>i menyn till vänster.
- Välj det API där du har lagt till cachelagringsprinciper.
- Välj en åtgärd att testa.
- Välj fliken Test i den övre högra menyn.
- Välj Spåra två eller tre gånger i snabb följd.
- Under HTTP-svar väljer du fliken Spårning .
- 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:
Relaterat innehåll
- Mer information om cachelagringsprinciper finns i Cachelagringsprinciper i Principreferens för API Management.
- Mer information om hur du cachelagrar objekt med nycklar med hjälp av principuttryck finns i Anpassad cachelagring i Azure API Management.
- Mer information om hur du använder extern Azure Cache for Redis finns i Använda en extern Azure Cache for Redis i Azure API Management.