Schnellstart: Verwenden von Azure Cache for Redis mit Node.js

In dieser Schnellstartanleitung integrieren Sie Azure Cache für Redis in eine Node.js-App, um Zugriff auf einen sicheren, dedizierten Cache zu erhalten, der von jeder Anwendung in Azure aus zugänglich ist.

Voraussetzungen

Beispiele für die Verwendung anderer Node.js-Clients finden Sie in der entsprechenden Dokumentation für die hieraufgeführten Node.js-Clients.

Erstellen eines Caches

  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.

Abrufen von Hostname, Ports und Zugriffsschlüsseln vom Azure-Portal

Um ihren Azure Cache for Redis-Server zu verbinden, benötigt der Cacheclient den Hostnamen, die Ports und einen Schlüssel für den Cache. Von einigen Clients wird unter Umständen mit etwas anderen Namen auf diese Elemente verwiesen. Sie können den Hostnamen, Ports und Zugriffsschlüssel vom Azure-Portal abrufen.

  • Wählen Sie Zugriffsschlüssel aus, um die Zugriffsschlüssel aus dem linken Navigationsbereich des Cache abzurufen.

    Azure Cache for Redis-Schlüssel

  • Wählen Sie Eigenschaften aus, um den Hostnamen und die Ports aus dem linken Navigationsbereich des Cache abzurufen. Der Hostname hat das Format <DNS-Name>.redis.cache.windows.net.

    Azure Cache for Redis-Eigenschaften

Fügen Sie Umgebungsvariablen für Ihren HOSTNAMEN und Ihren primären Zugriffsschlüssel hinzu. Verwenden Sie diese Variablen aus Ihrem Code, damit solche vertraulichen Informationen nicht direkt in den Code eingefügt werden müssen.

set AZURE_CACHE_FOR_REDIS_HOST_NAME=contosoCache
set AZURE_CACHE_FOR_REDIS_ACCESS_KEY=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Herstellen einer Verbindung mit dem Cache

Die aktuellen Builds von node_redis bieten Unterstützung für mehrere Verbindungsoptionen. Erstellen Sie in Ihrem Code nicht für jeden Vorgang eine neue Verbindung. Verwenden Sie Verbindungen stattdessen möglichst häufig wieder.

Erstellen einer neuen Node.js-App

  1. Erstellen Sie eine neue Skriptdatei namens redistest.js.

  2. Verwenden Sie den Befehl zum Installieren eines Redis-Pakets.

    `npm install redis`
    
  3. Fügen Sie den folgenden JavaScript-Beispielcode in die Datei ein.

    const redis = require("redis");
    
    // Environment variables for cache
    const cacheHostName = process.env.AZURE_CACHE_FOR_REDIS_HOST_NAME;
    const cachePassword = process.env.AZURE_CACHE_FOR_REDIS_ACCESS_KEY;
    
    if(!cacheHostName) throw Error("AZURE_CACHE_FOR_REDIS_HOST_NAME is empty")
    if(!cachePassword) throw Error("AZURE_CACHE_FOR_REDIS_ACCESS_KEY is empty")
    
    async function testCache() {
    
        // Connection configuration
        const cacheConnection = redis.createClient({
            // rediss for TLS
            url: `rediss://${cacheHostName}:6380`,
            password: cachePassword
        });
    
        // Connect to Redis
        await cacheConnection.connect();
    
        // PING command
        console.log("\nCache command: PING");
        console.log("Cache response : " + await cacheConnection.ping());
    
        // GET
        console.log("\nCache command: GET Message");
        console.log("Cache response : " + await cacheConnection.get("Message"));
    
        // SET
        console.log("\nCache command: SET Message");
        console.log("Cache response : " + await cacheConnection.set("Message",
            "Hello! The cache is working from Node.js!"));
    
        // GET again
        console.log("\nCache command: GET Message");
        console.log("Cache response : " + await cacheConnection.get("Message"));
    
        // Client list, useful to see if connection list is growing...
        console.log("\nCache command: CLIENT LIST");
        console.log("Cache response : " + await cacheConnection.sendCommand(["CLIENT", "LIST"]));
    
        // Disconnect
        cacheConnection.disconnect()
    
        return "Done"
    }
    
    testCache().then((result) => console.log(result)).catch(ex => console.log(ex));
    

    Dieser Code zeigt, wie Sie unter Verwendung der Umgebungsvariablen für Cachehostname und Schlüssel eine Verbindung mit einer Azure Cache for Redis-Instanz herstellen. Der Code speichert auch einen Zeichenfolgenwert im Cache und ruft ihn ab. Außerdem werden die Befehle PING und CLIENT LIST ausgeführt. Weitere Beispiele für die Verwendung von Redis mit dem node_redis-Client finden Sie unter https://redis.js.org/.

  4. Führen Sie das Skript mit Node.js aus.

    node redistest.js
    
  5. Beispiel für die Ausgabe.

    Cache command: PING
    Cache response : PONG
    
    Cache command: GET Message
    Cache response : Hello! The cache is working from Node.js!
    
    Cache command: SET Message
    Cache response : OK
    
    Cache command: GET Message
    Cache response : Hello! The cache is working from Node.js!
    
    Cache command: CLIENT LIST
    Cache response : id=10017364 addr=76.22.73.183:59380 fd=221 name= age=1 idle=0 flags=N db=0 sub=0 psub=0 multi=-1 qbuf=26 qbuf-free=32742 argv-mem=10 obl=0 oll=0 omem=0 tot-mem=61466 ow=0 owmem=0 events=r cmd=client user=default numops=6
    
    Done
    

Bereinigen von Ressourcen

Wenn Sie mit dem nächsten Tutorial fortfahren möchten, können Sie die in dieser Schnellstartanleitung erstellten Ressourcen beibehalten und wiederverwenden. Wenn Sie die Schnellstart-Beispielanwendung nicht mehr benötigen, können Sie die hier erstellten Azure-Ressourcen löschen, um das Anfallen von Kosten zu vermeiden.

Wichtig

Das Löschen einer Ressourcengruppe kann nicht rückgängig gemacht werden. Die Ressourcengruppe und alle darin enthaltenen Ressourcen werden also dauerhaft gelöscht. Achten Sie daher darauf, dass Sie nicht versehentlich die falsche Ressourcengruppe oder die falschen Ressourcen löschen. Falls Sie die Ressourcen zum Hosten dieses Beispiels in einer vorhandenen Ressourcengruppe erstellt haben, die Ressourcen enthält, die Sie behalten wollen, können Sie jede Ressourcen einzeln löschen, statt die Ressourcengruppe zu löschen.

  1. Melden Sie sich beim Azure-Portal an, und klicken Sie auf Ressourcengruppen.

  2. Geben Sie im Textfeld Nach Name filtern den Namen Ihrer Ressourcengruppe ein. In diesem Artikel wurde eine Ressourcengruppe mit dem Namen TestResources verwendet. Klicken Sie in der Ergebnisliste in Ihrer Ressourcengruppe auf ... und dann auf Ressourcengruppe löschen.

    Löschen einer Azure-Ressourcengruppe

  3. Bestätigen Sie das Löschen der Ressourcengruppe. Geben Sie zur Bestätigung den Namen Ihrer Ressourcengruppe ein, und klicken Sie auf Löschen.

  4. Daraufhin werden die Ressourcengruppe und alle darin enthaltenen Ressourcen gelöscht.

Beispielcode herunterladen

Rufen Sie den Node.js-Schnellstart auf GitHub ab.

Nächste Schritte

In dieser Schnellstartanleitung wurde beschrieben, wie Sie Azure Cache for Redis über eine Node.js-Anwendung verwenden. In der nächsten Schnellstartanleitung erfahren Sie, wie Sie Azure Cache for Redis mit einer ASP.NET-Web-App verwenden.