Freigeben über


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.

Zwischenspeicherungsrichtlinien

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.

  1. Melden Sie sich beim Azure-Portal an.

  2. Navigieren Sie zu Ihrer API Management-Instanz.

  3. Wählen Sie im Menü links APIs>APIs aus.

  4. Wählen Sie eine API aus, für die Sie die Zwischenspeicherung konfigurieren möchten.

  5. Klicken Sie im oberen Seitenbereich auf die Registerkarte Entwurf.

  6. Klicken Sie im Abschnitt Eingehende Verarbeitung auf das Symbol </>. Screenshot des Richtlinien-Editors von API Management im Portal

  7. 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>
    
  8. 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.

  1. Navigieren Sie im Azure-Portal zu Ihrer API Management-Instanz.
  2. Wählen Sie im Menü links APIs>APIs aus.
  3. Wählen Sie die API aus, der Sie Zwischenspeicherungsrichtlinien hinzugefügt haben.
  4. Wählen Sie einen Vorgang aus, den Sie testen möchten.
  5. Wählen Sie im Menü rechts oben die Registerkarte Test aus.
  6. Wählen Sie zwei- oder dreimal hintereinander Ablaufverfolgung aus.
  7. Wählen Sie unter HTTP-Antwort die Registerkarte Ablaufverfolgung aus.
  8. 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: Screenshot einer Cachesuche beim Testen einer API im Portal