Konfigurieren von Azure Cache for Redis

Abgeschlossen

Sie können einen Redis-Cache über das Azure-Portal, mithilfe der Azure CLI oder unter Verwendung von Azure PowerShell erstellen.

Erstellen und Konfigurieren einer Azure Cache for Redis-Instanz

Es gibt mehrere Parameter, die Sie festlegen müssen, um den Cache ordnungsgemäß für Ihre Zwecke zu konfigurieren.

Name

Für den Redis-Cache ist ein global eindeutiger Name erforderlich. Der Name muss innerhalb von Azure eindeutig sein, da er verwendet wird, um eine öffentlich zugängliche URL zu generieren, eine Verbindung herzustellen und mit dem Dienst zu kommunizieren.

Der Name muss zwischen 1 und 63 Zeichen lang sein und aus Ziffern, Buchstaben und dem Zeichen „-“ bestehen. Der Cachename darf weder mit dem Zeichen „-“ beginnen oder enden, noch mehrere aufeinanderfolgende Zeichen vom Typ „-“ enthalten.

Standort

Sie sollten Ihre Cacheinstanz und Ihre Anwendung immer in der gleichen Region platzieren. Das Herstellen einer Verbindung mit einem Cache in einer anderen Region kann die Wartezeit beträchtlich erhöhen und die Zuverlässigkeit beeinträchtigen. Wenn Sie die Verbindung mit dem Cache außerhalb von Azure herstellen, sollten Sie einen Standort in der Nähe des Orts auswählen, an dem die Anwendung, die die Daten nutzt, ausgeführt wird.

Cachetyp

Der Tarif bestimmt Größe, Leistung und verfügbare Features für den Cache. Weitere Informationen finden Sie unter Azure Cache for Redis – Preise.

Tipp

Microsoft empfiehlt, für Produktionssysteme immer den Standard-Tarif oder einen höheren Tarif zu verwenden. Der Basic-Tarif ist ein System mit einem einzelnen Knoten, ohne Datenreplikation und ohne SLA.

Unterstützung für Clustering

In den Tarifen Premium, Enterprise und Enterprise Flash können Sie Clustering implementieren, um Ihr Dataset automatisch auf mehrere Knoten aufzuteilen. Um Clustering zu implementieren, geben Sie eine maximale Anzahl von zehn Shards an. Die Kosten entsprechen den Kosten des ursprünglichen Knotens multipliziert mit der Anzahl von Shards.

Zugreifen auf die Redis-Instanz

Redis verfügt über ein Befehlszeilentool für die Interaktion mit Azure Cache for Redis als Client. Um das Tool auf Windows-Plattformen zu nutzen, laden Sie die Redis-Befehlszeilentools für Windows herunter. Wenn Sie das Befehlszeilentool auf einer anderen Plattform ausführen möchten, laden Sie Azure Cache for Redis von https://redis.io/download herunter.

Redis unterstützt eine Reihe von bekannten Befehlen. Ein Befehl wird in der Regel als COMMAND parameter1 parameter2 parameter3 ausgegeben.

Im Folgenden sind einige gängige Befehle aufgeführt, die Sie verwenden können:

Befehl Beschreibung
ping Den Server pingen. Gibt PONG zurück.
set [key] [value] Legt einen Schlüssel/Wert im Cache fest. Gibt bei erfolgreicher Ausführung „OK“ zurück.
get [key] Ruft einen Wert aus dem Cache ab.
exists [key] Gibt „1“ zurück, wenn der Schlüssel im Cache vorhanden ist, und andernfalls „0“.
type [key] Gibt den Typ zurück, der dem Wert für den angegebenen Schlüssel zugeordnet ist.
incr [key] Inkrementiert den angegebenen Wert, der dem Schlüssel zugeordnet ist, um 1. Der Wert muss vom Typ „Integer“ oder „Double“ sein. Gibt den neuen Wert zurück.
incrby [key] [amount] Den angegebenen Wert, der dem Schlüssel zugeordnet ist, um den festgelegten Wert erhöhen. Der Wert muss vom Typ „Integer“ oder „Double“ sein. Gibt den neuen Wert zurück.
del [key] Löscht den Wert, der dem Schlüssel zugeordnet ist.
flushdb Alle Schlüssel und Werte in der Datenbank löschen.

Im Folgenden finden Sie ein Beispiel für einen Befehl:

> set somekey somevalue
OK
> get somekey
"somevalue"
> exists somekey
(string) 1
> del somekey
(string) 1
> exists somekey
(string) 0

Hinzufügen einer Ablaufzeit zu Werten

Die Zwischenspeicherung ist wichtig, da sie uns das Speichern von häufig verwendeten Werten im Arbeitsspeicher ermöglicht. Wir müssen jedoch auch in der Lage sein, eine Ablaufzeit für veraltete Werte festzulegen. In Redis wird zum Ablaufen von Werten dazu Gültigkeitsdauer (Time To Live, TTL) auf einen Schlüssel angewendet.

Nach Ablauf der TTL wird der Schlüssel genau wie bei der Ausgabe des DEL-Befehls automatisch gelöscht. Im Folgenden finden Sie einige Hinweise zum TTL-Ablauf.

  • Ablaufzeiten können mit Sekunden- oder Millisekundengenauigkeit festgelegt werden.
  • Die Auflösung der Ablaufzeit ist immer 1 Millisekunde.
  • Informationen zur Ablaufzeit werden repliziert und dauerhaft auf dem Datenträger gespeichert. Die Zeit verstreicht gewissermaßen virtuell, während Ihr Redis-Server beendet ist (d. h. Redis speichert das Datum, an dem ein Schlüssel abläuft).

Hier sehen Sie ein Beispiel für einen Ablauf:

> set counter 100
OK
> expire counter 5
(integer) 1
> get counter
100
... wait ...
> get counter
(nil)

Zugreifen auf einen Redis-Cache von einem Client

Zum Herstellen einer Verbindung mit einer Azure Cache for Redis-Instanz sind verschiedene Informationen erforderlich. Clients benötigen den Hostnamen, den Port und einen Zugriffsschlüssel für den Cache. Sie können diese Informationen im Azure-Portal auf der Seite Einstellungen > Zugriffsschlüssel abrufen.

  • Der Hostname ist die öffentliche Internetadresse Ihres Caches, die mit dem Namen des Caches erstellt wurde. Beispiel: sportsresults.redis.cache.windows.net.

  • Der Zugriffsschlüssel fungiert als Kennwort für Ihren Cache. Es werden zwei Schlüssel erstellt: ein Primärschlüssel und ein Sekundärschlüssel. Sie können beide Schlüssel verwenden. Zwei werden bereitgestellt, falls Sie den Primärschlüssel ändern müssen. Sie können alle Clients auf den Sekundärschlüssel umstellen und den Primärschlüssel erneut generieren. In diesem Fall werden alle Anwendungen blockiert, die den ursprünglichen Primärschlüssel verwenden. Microsoft empfiehlt, die Schlüssel wie persönliche Kennwörter in regelmäßigen Abständen erneut zu generieren.

Warnung

Die Zugriffsschlüssel sollten als vertrauliche Informationen behandelt und wie Kennwörter geschützt werden. Jede Person mit einem Zugriffsschlüssel kann beliebige Vorgänge in Ihrem Cache durchführen.