Opslaan in cache toevoegen om de prestaties in Azure API Management te verbeteren
VAN TOEPASSING OP: Ontwikkelaar | Basic | Basic v2 | Standaard | Standard v2 | Premium
API's en bewerkingen in API Management kunnen worden geconfigureerd met reactiecaching. Antwoordcaching kan de latentie voor API-aanroepers en back-endbelasting voor API-providers aanzienlijk verminderen.
Belangrijk
De ingebouwde cache is vluchtig en wordt gedeeld door alle eenheden in dezelfde regio in dezelfde API Management-service. Ongeacht het gebruikte cachetype (intern of extern), als de cachegerelateerde bewerkingen geen verbinding kunnen maken met de cache vanwege de vluchtigheid van de cache of andere redenen, veroorzaakt de API-aanroep die gebruikmaakt van de cachegerelateerde bewerking geen fout en wordt de cachebewerking voltooid. In het geval van een leesbewerking wordt een null-waarde geretourneerd naar de aanroepende beleidsexpressie. Uw beleidscode moet zijn ontworpen om ervoor te zorgen dat er een terugvalmechanisme is om gegevens op te halen die niet in de cache zijn gevonden. Zie de beleidsregels voor API Management-caching en Aangepaste caching in Azure API Management voor meer informatie over caching.
Wat u leert:
- Antwoorden in cache opslaan toevoegen aan de API
- Verificatie van opslaan in de cache in actie
Notitie
Interne cache is niet beschikbaar in de laag Verbruik van Azure API Management. U kunt in plaats daarvan een externe Azure Cache voor Redis gebruiken. U kunt ook een externe cache configureren in andere API Management-servicelagen.
Vereisten
Vereisten om deze zelfstudie te voltooien:
- Een Azure API Management-exemplaar maken
- Import and publish an API (API's importeren en publiceren)
De cachebeleidsregels toevoegen
Met de cachebeleidsregels in dit voorbeeld wordt met de eerste aanvraag voor de bewerking GetSpeakers een antwoord geretourneerd van de back-endservice. Dit antwoord wordt in de cache opgeslagen en voorzien van een sleutel door de opgegeven headers en querytekenreeksparameters. Voor volgende aanroepen voor de bewerking, met overeenkomende parameters, wordt het antwoord geretourneerd dat in de cache is opgeslagen, tot het cacheduurinterval is verlopen.
Meld u aan bij het Azure-portaal.
Blader naar de APIM-instantie.
Selecteer het tabblad API.
Klik in de API-lijst op Demo Conference API.
Selecteer GetSpeakers.
Selecteer boven in het scherm het tabblad Ontwerp.
Klik in de sectie Binnenkomende verwerking op het </> -pictogram.
Voeg aan het inkomende element de volgende beleidsregel toe:
<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>
Voeg aan het uitgaande element de volgende beleidsregel toe:
<cache-store duration="20" />
Met Duur wordt het vervalinterval opgegeven van de antwoorden in de cache. In dit voorbeeld bedraagt het interval 20 seconden.
Tip
Als u een externe cache gebruikt, zoals is beschreven in Een externe Azure Cache voor Redis gebruiken in Azure API Management, wilt u misschien het kenmerk caching-type
van het cachebeleid opgeven. Zie API Management caching policies (Cache-beleidsregels van API Management) voor meer informatie.
Een bewerking aanroepen en het opslaan in de cache testen
Als u opslaan in de cache in actie wilt zien, roept u de bewerking aan vanuit de ontwikkelaarsportal.
- Blader in Azure Portal naar de APIM-instantie.
- Selecteer het tabblad API's.
- Selecteer de API waaraan u cachebeleidsregels wilt toevoegen.
- Selecteer de bewerking GetSpeakers.
- Klik rechtsboven in het menu op het tabblad Test.
- Druk op Verzenden.
Volgende stappen
- Zie Cachebeleidsregels in Naslaginformatie over beleid voor API Management voor meer informatie over cachebeleidsregels.
- Zie Aangepast opslaan in cache in Azure API Management voor informatie over het opslaan van items in de cache per sleutel met behulp van beleidsexpressies.
- Voor meer informatie over het gebruik van de externe Azure Cache voor Redis raadpleegt u Een externe Azure Cache voor Redis gebruiken in Azure API Management.