Hinzufügen der Zwischenspeicherung zum Verbessern der Leistung in Azure API Management
GILT FÜR: Developer | Basic | Basic v2 | Standard | Standard v2 | Premium | Premium v2
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 Testvorgang 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 API Management-Instanz.
Wählen Sie im Menü links APIs>APIs aus.
Wählen Sie eine API aus, für die Sie die Zwischenspeicherung konfigurieren möchten.
Klicken Sie im oberen Seitenbereich auf die Registerkarte Entwurf.
Klicken Sie im Abschnitt Eingehende Verarbeitung auf das Symbol </>.
Fügen Sie im
inbound
-Element 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
outbound
-Element die folgende Richtlinie hinzu:<cache-store duration="20" />
In dieser Richtlinie gibt duration das Ablaufintervall der zwischengespeicherten 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
Rufen Sie einen Vorgang über das Portal auf, um die Zwischenspeicherung in Aktion zu erleben.
- Navigieren Sie im Azure-Portal zu Ihrer API Management-Instanz.
- Wählen Sie im Menü links APIs>APIs aus.
- Wählen Sie die API aus, der Sie Zwischenspeicherungsrichtlinien hinzugefügt haben.
- Wählen Sie einen Vorgang aus, den Sie testen möchten.
- Wählen Sie im Menü rechts oben die Registerkarte Test aus.
- Wählen Sie zwei- oder dreimal hintereinander Ablaufverfolgung aus.
- Wählen Sie unter HTTP-Antwort die Registerkarte Ablaufverfolgung aus.
- Wechseln Sie zum Abschnitt Eingehend, und scrollen Sie zur Richtlinie
cache-lookup
. Es sollte eine Meldung ähnlich dem folgenden Screenshot angezeigt werden, die einen Cachetreffer anzeigt:
Zugehöriger Inhalt
- 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.