In diesem Leitfaden werden wir untersuchen, wie man Schlüssel in Redis abläuft. Wie der Titel schon sagt, werden wir uns auf die Hash -Schlüssel -Ablauf konzentrieren, aber das allgemeine Konzept gilt auch für andere Schlüssel.”
Voraussetzungen
Um die in diesem Handbuch gezeigten Schritte auszuführen, benötigen Sie die folgenden Komponenten, die bereit sind:
Redisschlüssel
Redisschlüssel sind standardmäßig beständig, was bedeutet, dass ein Eintrag intakt bleibt. Während diese Konfiguration im Allgemeinen gut ist, gibt es Situationen, in denen Sie möchten, dass die Schlüssel nach einer bestimmten Zeit ablaufen. Mit anderen Worten, du würdest du willst flüchtig Schlüssel.
Jetzt unterstützt Redis mehrere Tastenarten, die vom Datentyp kategorisiert sind. Hier sind einige der häufigsten Datentypen, denen Sie begegnen werden:
Weitere Informationen finden Sie in der offiziellen Redis-Dokumentation zu Datentypen, um detailliertere Informationen zu erhalten. Für den Zweck dieses Leitfadens werden wir uns auf die Hash -Tasten konzentrieren.
Hash -Schlüssel
In Redis sind Hashes Karten zwischen Feldern (Zeichenfolge) und Werten (String). Aufgrund dieser Struktur ist es der perfekte Datentyp für die Darstellung von Objekten. Lassen Sie uns mit einem Beispiel erklären. Schauen Sie sich die folgende Struktur an:
Hier können wir User_database als Hash -Schlüssel betrachten. In diesem Hash haben wir mehrere Feldwertpaare, die Benutzername und Passwort darstellen. Lassen Sie es uns in Redis implementieren:
$ Hmset user_database user_1 "David" pass_1 "password_1"
$ Hmset user_database user_2 "Alex" pass_2 "password_2"
$ Hmset user_database user_3 "mason" pass_3 "password_3"
Wie gezeigt, verwendet Redis den Befehl HMSET, um Hash -Tasten zu registrieren. Um die im Schlüssel gespeicherten Daten abzurufen, müssen wir den Befehl hGet verwenden:
$ HGet user_database user_1
$ HGet user_database pass_3
Verwenden Sie stattdessen den Befehl HGetall, um die Informationen aller Felder gleichzeitig zu erhalten:
$ HGetall user_database
In Redis kann ein Hash -Schlüssel bis zu 2^32 - 1 (mehr als 4 Milliarden) Feldwertpaare haben. Meistens werden Hashes verwendet, um Objekte darzustellen. Aufgrund seiner Natur können Hashes jedoch in zahlreichen Situationen nützlich sein.
Redis -Schlüssel verfällt
Alle Redis -Objekte haben eine Ablaufzeit. Standardmäßig wird der Wert auf nie gesetzt. Durch die Änderung dieses Wertes können wir jedoch Redis -Schlüssel einstellen. Sobald die Ablaufzeit übergeben ist, wird der Schlüssel aus der Datenbank gelöscht.
Obwohl es sich um eine verallgemeinerte Erklärung handelt, ist der tatsächliche Mechanismus der wichtigsten Ablauf etwas kompliziert. Schauen Sie sich die offizielle Redis-Dokumentation an, um den wichtigsten Ablaufmechanismus ausführlich zu erklären.
Um eine Ablaufzeit festzulegen, werden wir den Befehl Ablauf verwenden. Das folgende Beispiel zeigt seine Verwendung:
$ Set Hallo "Der schnelle braune Fuchs"
$ Abläufe Hallo 999
Hier wird der Schlüssel Hallo in 999 Sekunden verfallen. Verwenden Sie den Befehl TTL, um die Zeit zu überprüfen, um einen Schlüssel zu verfallen, um zu verfallen:
$ Ttl Hallo
Die Ausgabe gibt die Zeit zurück, bevor der Schlüssel abläuft. Bei einem Fehler kann TTL jedoch unterschiedliche Werte zurückgeben:
Auslaufer Hash -Schlüssel
Jetzt, da wir die Hash -Tasten verstehen und wie wichtiger Ablauf funktioniert, ist es Zeit, sie in Aktion zu setzen.
Wenn wir uns mit dem Hash -Schlüsselbeispiel fortsetzen, lassen Sie uns eine Ablaufzeit an user_database setzen:
$ Leugnung user_database 999
Um diese Aktion zu überprüfen, überprüfen Sie den TTL -Wert von user_database:
$ Ttl user_database
Optionen ablehnen
Der Befehl aus Ablauf verfügt über einige zusätzliche Optionen, die einige zusätzliche Bedingungen implementieren, wenn die Ablaufzeit festgelegt wird. Diese sind wie folgt:
Bei der Implementierung der Optionen sieht der Befehl ungefähr so aus:
$ Verfallen
Lassen Sie uns die Ablaufzeit von user_database fortsetzen:
$ Leugnung user_database 9999 gt
Überprüfen Sie, ob die Ablaufzeit aktualisiert wurde:
$ Ttl user_database
Abschließende Gedanken
In diesem Leitfaden haben wir einen Hash -Schlüssel in Redis untersucht. Redis verfügt über einen dedizierten Befehl verfällt, um eine Ablaufzeit für Schlüssel festzulegen. Wir haben gezeigt, wie man diesen Befehl verwendet, um einen Demo -Schlüssel zu verfallen. Wir haben auch verschiedene Optionen untersucht, die der Befehl Ablauf unterstützt.
Möchten Sie mehr über Redis erfahren? Die Redis-Unterkategorie ist voller ausführlicher Führer. Erfahren Sie mehr über Common Redis -Befehle, den BitCount -Befehl, Pipelining usw.
Happy Computing!