Hinzufügen der Zwischenspeicherung zum Verbessern der Leistung in Azure API Management
GILT FÜR: Developer | Basic | Basic v2 | Standard | Standard v2 | Premium
APIs und Vorgänge in API Management können mit dem Zwischenspeichern von Antworten konfiguriert werden. Das Zwischenspeichern von Antworten kann die Latenzzeit für API-Aufrufer und die Back-End-Auslastung für API-Anbieter bedeutend reduzieren.
Wichtig
Der integrierte Cache ist flüchtig und wird von allen Einheiten in derselben Region desselben API Management-Diensts gemeinsam genutzt. Unabhängig vom verwendeten Cache-Typ (intern oder extern) löst der API-Aufruf, der den Cache-bezogenen Vorgang verwendet, keinen Fehler aus, wenn die Cache-bezogenen Vorgänge aufgrund der Flüchtigkeit des Caches oder aus anderen Gründen keine Verbindung zum Cache herstellen können. Der Cache-Vorgang wird erfolgreich abgeschlossen. Bei einem Lesevorgang wird ein NULL-Wert an den aufrufenden Richtlinienausdruck zurückgegeben. Ihr Richtliniencode sollte so konzipiert sein, dass es einen Fallbackmechanismus zum Abrufen von Daten gibt, die nicht im Cache gefunden wurden. Ausführlichere Informationen zum Zwischenspeichern finden Sie unter Richtlinien für API Management-Zwischenspeichern sowie unter Benutzerdefiniertes Zwischenspeichern in Azure API Management.
Sie lernen Folgendes:
- Hinzufügen des Zwischenspeicherns von Antworten für Ihre API
- Überprüfen des Zwischenspeicherns in Aktion
Hinweis
Im Tarif Consumption von Azure API Management ist kein interner Cache verfügbar. Sie können stattdessen eine externe Azure Cache for Redis-Instanz verwenden. Sie können auch einen externen Cache in anderen API Management-Dienstebenen konfigurieren.
Voraussetzungen
Für dieses Tutorial benötigen Sie Folgendes:
Hinzufügen der Zwischenspeicherungsrichtlinien
Mit den Zwischenspeicherungsrichtlinien in diesem Beispiel gibt die erste Anforderung an den Vorgang GetSpeakers eine Antwort vom Back-End-Dienst zurück. Diese Antwort wird zwischengespeichert und erhält einen Schlüssel, der auf den angegebenen Headern und Abfrageparametern basiert. Bei nachfolgenden Aufrufen der Operation mit denselben Parametern wird die zwischengespeicherte Antwort zurückgegeben, bis das Ablaufintervall abgelaufen ist.
Melden Sie sich beim Azure-Portal an.
Navigieren Sie zu Ihrer APIM-Instanz.
Klicken Sie auf die Registerkarte API.
Klicken Sie in der API-Liste auf Demo Conference API.
Wählen Sie GetSpeakers aus.
Klicken Sie im oberen Seitenbereich auf die Registerkarte Entwurf.
Klicken Sie im Abschnitt Eingehende Verarbeitung auf das Symbol </>.
Fügen Sie im Element für den Eingang die folgende Richtlinie hinzu:
<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>
Fügen Sie im Element für den Ausgang die folgende Richtlinie hinzu:
<cache-store duration="20" />
Dauer gibt das Ablaufintervall der gespeicherten Antworten an. In diesem Beispiel beträgt das Intervall 20 Sekunden.
Tipp
Wenn Sie wie unter Verwenden einer externen Azure Cache for Redis-Instanz in Azure API Management beschrieben einen externen Cache verwenden, empfiehlt es sich ggf., das Attribut caching-type
der Cachingrichtlinien anzugeben. Ausführlichere Informationen finden Sie unter Cacherichtlinien für API Management.
Aufrufen einer Operation und Testen der Zwischenspeicherung
Um die Zwischenspeicherung in Aktion zu sehen, können Sie den Vorgang über das Entwicklerportal aufrufen.
- Navigieren Sie im Azure-Portal zu Ihrer APIM-Instanz.
- Klicken Sie auf die Registerkarte APIs.
- Wählen Sie die API aus, der Sie Zwischenspeicherungsrichtlinien hinzugefügt haben.
- Wählen Sie den Vorgang GetSpeakers aus.
- Klicken Sie im Menü rechts oben auf die Registerkarte Test.
- Klicken Sie auf Senden.
Nächste Schritte
- Weitere Informationen zu Richtlinien für die Zwischenspeicherung finden Sie unter Richtlinien für die Zwischenspeicherung in der Richtlinienreferenz für API Management.
- Informationen zum Zwischenspeichern von Elementen nach Schlüssel mithilfe von Richtlinienausdrücken finden Sie unter Benutzerdefiniertes Zwischenspeichern in Azure API Management.
- Weitere Informationen zur Verwendung einer externen Azure Cache for Redis-Instanz finden Sie unter Verwenden einer externen Azure Cache for Redis-Instanz in Azure API Management.