Verwenden eines externen Redis-kompatiblen Caches in Azure API Management

GILT FÜR: Alle API Management-Ebenen

Zusätzlich zum integrierten Cache können Sie mit Azure API Management Antworten in einem externen, mit Redis kompatiblen Cache zwischenspeichern, z. B. in Azure Cache for Redis.

Durch die Verwendung eines externen Caches lassen sich einige Einschränkungen des integrierten Caches umgehen:

  • Vermeidung der regelmäßigen Löschung Ihres Caches im Zuge von API Management-Updates
  • Mehr Kontrolle über Ihre Cachekonfiguration
  • Zwischenspeichern von mehr Daten als mit Ihrem API Management-Tarif
  • Verwendung der Zwischenspeicherung mit dem Verbrauchstarif von API Management
  • Aktivieren des Zwischenspeicherns im selbstgehosteten API Management-Gateway

Ausführlichere Informationen zum Zwischenspeichern finden Sie unter Cacherichtlinien für API Management sowie unter Benutzerdefiniertes Zwischenspeichern in Azure API Management.

Verwenden eines eigenen Caches in API Management

Sie lernen Folgendes:

  • Hinzufügen eines externen Caches in API Management

Voraussetzungen

Für dieses Tutorial benötigen Sie Folgendes:

Erstellen von Azure Cache for Redis

In diesem Abschnitt erfahren Sie, wie Sie eine Azure Cache for Redis-Instanz in Azure erstellen. Wenn Sie bereits über eine Azure Cache for Redis-Instanz oder einen anderen mit Redis kompatiblen Cache innerhalb oder außerhalb von Azure verfügen, können Sie direkt mit dem nächsten Abschnitt fortfahren.

  1. Melden Sie sich zum Erstellen eines Caches beim Azure-Portal an, und wählen Sie Ressource erstellen aus.

    Im linken Navigationsbereich ist „Ressource erstellen“ hervorgehoben.

  2. Wählen Sie auf der Seite Neu die Option Datenbanken und dann Azure Cache for Redis aus.

    Unter „Neu“ sind die Optionen „Datenbanken“ und „Azure Cache for Redis“ hervorgehoben.

  3. Konfigurieren Sie auf der Seite Neuer Redis Cache die Einstellungen für den neuen Cache.

    Einstellung Wert auswählen BESCHREIBUNG
    Abonnement Öffnen Sie die Dropdownliste, und wählen Sie Ihr Abonnement aus. Das Abonnement, unter dem diese neue Azure Cache for Redis-Instanz erstellt wird.
    Ressourcengruppe Öffnen Sie die Dropdownliste, und wählen Sie eine Ressourcengruppe aus, oder wählen Sie Neu erstellen aus, und geben Sie einen Namen für eine neue Ressourcengruppe ein. Der Name der Ressourcengruppe, in der Ihr Cache und weitere Ressourcen erstellt werden. Wenn Sie alle Ihre App-Ressourcen in einer Ressourcengruppe zusammenfassen, können Sie sie einfacher gemeinsam verwalten oder löschen.
    DNS-Name Geben Sie einen eindeutigen Namen ein. Der Cachename muss zwischen 1 und 63 Zeichen lang sein und darf nur Ziffern, Buchstaben und Bindestriche enthalten. Der Name muss mit einer Zahl oder einem Buchstaben beginnen und enden und darf keine aufeinanderfolgenden Bindestriche enthalten. Der Hostname Ihrer Cache-Instanz lautet <DNS-Name>.redis.cache.windows.net.
    Location Öffnen Sie die Dropdownliste, und wählen Sie einen Standort aus. Wählen Sie eine Region in der Nähe anderer Dienste aus, die Ihren Cache verwenden.
    Cachetyp Öffnen Sie die Dropdownliste, und wählen Sie einen Tarif aus. Der Tarif bestimmt Größe, Leistung und verfügbare Features für den Cache. Weitere Informationen finden Sie unter What is Azure Cache for Redis (Was ist Azure Cache for Redis?).
  4. Wählen Sie die Registerkarte Netzwerk oder unten auf der Seite die Schaltfläche Netzwerk aus.

  5. Wählen Sie auf der Registerkarte Netzwerk Ihre Konnektivitätsmethode aus.

  6. Wählen Sie die Registerkarte Weiter: Erweitert oder unten auf der Seite die Schaltfläche Weiter: Erweitert aus, um die Registerkarte Erweitert anzuzeigen.

    Screenshot der Registerkarte „Erweitert“ im Arbeitsbereich und der verfügbaren Auswahloptionen.

    • Schalten Sie für Basic- oder Standard-Caches die Auswahl auf einen Nicht-TLS-Port um. Sie können auch auswählen, ob Sie die Microsoft Entra-Authentifizierung aktivieren möchten.
    • Konfigurieren Sie für ein Premium-Cache die Einstellungen für einen Nicht-TLS-Port, das Clustering, die verwaltete Identität und die Datenpersistenz. Sie können auch auswählen, ob Sie die Microsoft Entra-Authentifizierung aktivieren möchten.
  7. Wählen Sie die Registerkarte Weiter: Tags oder unten auf der Seite die Schaltfläche Weiter: Tags aus.

  8. Geben Sie optional auf der Registerkarte Tags den Namen und den Wert ein, wenn Sie die Ressource kategorisieren möchten.

  9. Klicken Sie auf Überprüfen + erstellen. Sie werden zur Registerkarte Überprüfen und erstellen weitergeleitet, auf der Azure Ihre Konfiguration überprüft.

  10. Wenn die grüne Meldung „Validierung erfolgreich“ angezeigt wird, wählen Sie Erstellen aus.

Es dauert eine Weile, bis der Cache erstellt worden ist. Sie können den Fortschritt auf der Seite Übersicht von Azure Cache for Redis überwachen. Wenn Wird ausgeführt als Status angezeigt wird, ist der Cache einsatzbereit.

Bereitstellen von Redis Cache in Kubernetes

Bei einem selbstgehosteten Gateway benötigt das Zwischenspeichern einen externen Cache. Damit das Zwischenspeichern effektiv ist, müssen sich das selbstgehostete Gateway und der Cache, auf dem es basiert, nah beieinander befinden, um Wartezeiten beim Lookup und dem Speichern zu minimieren. Das Bereitstellen eines Redis Cache im selben Kubernetes-Cluster oder in einem gesonderten Cluster in der Nähe sind die besten Optionen. Hier erfahren Sie, wie Sie einen Redis-Cache in einem Kubernetes-Cluster bereitstellen.

Hinzufügen eines externen Caches

Gehen Sie wie folgt vor, um Azure API Management einen externen, mit Redis kompatiblen Cache hinzuzufügen. Sie können den Cache auf ein bestimmtes Gateway in Ihrer API Management-Instanz beschränken.

Screenshot des Hinzufügens einer externen Azure Cache for Redis-Instanz in Azure API Management

Einstellung „Verwenden aus“

Die Einstellung Verwenden aus in der Konfiguration gibt den Speicherort Ihrer API Management-Instanz an, die den Cache verwendet. Wählen Sie eines der folgenden Szenarien aus:

  • Die Azure-Region, in der die API Management-Instanz gehostet wird, oder einer der konfigurierten Speicherorte, wenn Sie über eine Bereitstellung mit mehreren Regionen verfügen

  • Ein selbstgehosteter Gatewayspeicherort

  • Standard, um den Cache als Standard für alle Gatewayspeicherorte in der API Management-Instanz zu konfigurieren

    Ein für Standard verwendeter Cache wird von einem Cache außer Kraft gesetzt, der für eine bestimmte übereinstimmende Region oder einen Speicherort verwendet wird.

    Betrachten Sie beispielsweise eine API Management-Instanz, die in den Regionen „USA, Osten“, „Asien, Südosten“ und „Europa, Westen“ gehostet wird. Zwei Caches sind konfiguriert, einer für Standard und einer für Asien, Südosten. In diesem Beispiel verwendet API Management in Asien, Südosten einen eigenen Cache, während die anderen beiden Regionen den Cache-Eintrag Standard nutzen.

Hinweis

Sie können denselben externen Cache für mehrere API Management-Instanzen konfigurieren. Die Instanzen können sich in derselben oder in verschiedenen Regionen befinden. Wenn Sie den Cache für mehrere Instanzen freigeben, müssen Sie Standard unter der Einstellung Verwenden aus auswählen.

Hinzufügen einer Azure Cache for Redis-Instanz aus dem gleichen Abonnement

  1. Navigieren Sie im Azure-Portal zu Ihrer API Management-Instanz.
  2. Wählen Sie im Menü auf der linken Seite die Registerkarte External cache (Externer Cache) aus.
  3. Wählen Sie die Schaltfläche + Hinzufügen aus.
  4. Wählen Sie im Dropdownfeld Cache instance (Cacheinstanz) Ihren Cache aus.
  5. Wählen Sie Standard aus, oder geben Sie im Dropdownfeld Verwenden aus die gewünschte Region an.
  6. Wählen Sie Speichern aus.

Hinzufügen eines mit Redis kompatiblen Caches, der außerhalb des aktuellen Azure-Abonnements oder außerhalb von Azure gehostet wird

  1. Navigieren Sie im Azure-Portal zu Ihrer API Management-Instanz.
  2. Wählen Sie im Menü auf der linken Seite die Registerkarte External cache (Externer Cache) aus.
  3. Wählen Sie die Schaltfläche + Hinzufügen aus.
  4. Wählen Sie im Dropdownfeld Cache instance (Cacheinstanz) die Option Benutzerdefiniert aus.
  5. Wählen Sie Standard aus, oder geben Sie im Dropdownfeld Verwenden aus die gewünschte Region an.
  6. Geben Sie im Feld Verbindungszeichenfolge die Verbindungszeichenfolge Ihrer Azure Cache for Redis-Instanz oder Ihres mit Redis kompatiblen Caches an.
  7. Wählen Sie Speichern aus.

Hinzufügen eines Redis Cache zu einem selbstgehosteten Gateway

  1. Navigieren Sie im Azure-Portal zu Ihrer API Management-Instanz.
  2. Wählen Sie im Menü auf der linken Seite die Registerkarte External cache (Externer Cache) aus.
  3. Wählen Sie die Schaltfläche + Hinzufügen aus.
  4. Wählen Sie im Dropdownfeld Cache instance (Cacheinstanz) die Option Benutzerdefiniert aus.
  5. Geben Sie den gewünschten Standort des selbstgehosteten Gateways oder Standard im Dropdownfeld Verwenden aus an.
  6. Geben Sie im Feld Verbindungszeichenfolge die Verbindungszeichenfolge Ihres Redis-Caches an.
  7. Wählen Sie Speichern aus.

Verwenden des externen Caches

Konfigurieren Sie Zwischenspeicherungsrichtlinien zum Aktivieren des Zwischenspeicherns von Antworten oder Werten nach Schlüssel im externen Cache, nachdem Sie einen mit Redis kompatiblen Cache hinzugefügt haben.

Ein ausführliches Beispiel finden Sie unter Hinzufügen des Zwischenspeicherns zum Verbessern der Leistung in Azure API Management.

Nächste Schritte