Kursinhalt
Einführung in Redis
Einführung in Redis
Verwaltung des Schlüsselablaufs
TTL gibt die Dauer an, wie lange ein Schlüssel in der Datenbank verfügbar bleibt. Sobald diese Zeit abläuft, wird der Schlüssel automatisch gelöscht.
Wie im Beispiel gezeigt, werden Schlüssel mit abgelaufenen TTLs entfernt, während die verbleibenden Schlüssel weiterhin in der Datenbank mit ihren aktualisierten Lebensdauern existieren. Dies hilft, die Speichernutzung zu optimieren und die Entfernung von veralteten Daten zu automatisieren.
Festlegen der Schlüsselablaufzeit
Sie können die Ablaufzeit für einen Schlüssel auf verschiedene Weise festlegen. Zum Beispiel können Sie einen Schlüssel definieren und angeben, dass er für eine Stunde existieren wird:
Hier wird der Schlüssel my_key
nach 3600 Sekunden (1 Stunde) automatisch gelöscht.
Alternativ können Sie das Setzen eines Wertes und das Definieren der TTL in einem einzigen Befehl kombinieren. Zum Beispiel, um die TTL in Sekunden oder Millisekunden festzulegen:
Im ersten Fall wird der Schlüssel nach 3600 Sekunden ablaufen, und im zweiten Fall wird er nach 60000 Millisekunden (1 Minute) ablaufen.
Überprüfen der verbleibenden TTL
Um zu überprüfen, wie viel Zeit verbleibt, bevor ein Schlüssel abläuft, können Sie den TTL-Befehl verwenden:
Wenn der Schlüssel existiert und eine TTL hat, gibt der Befehl die verbleibende Zeit in Sekunden zurück. Zum Beispiel, wenn das Ergebnis 120
ist, wird der Schlüssel in 2
Minuten ablaufen. Wenn der Schlüssel kein Ablaufdatum hat, ist das Ergebnis -1
, und wenn der Schlüssel nicht existiert, ist das Ergebnis -2
.
Für eine genauere Kontrolle können Sie Millisekunden verwenden:
Zum Beispiel, wenn das Ergebnis 45000 ist, bedeutet es, dass der Schlüssel in 45 Sekunden abläuft.
Entfernen des Schlüsselablaufs
Wenn ein Schlüssel nicht mehr automatisch ablaufen soll, können Sie seine TTL entfernen:
Nach diesem Befehl wird der Schlüssel my_key
permanent und wird nicht automatisch gelöscht.
Praktische Anwendungen
Verwaltung der Schlüsselablaufzeit hat eine Vielzahl von Anwendungsfällen. Zum Beispiel werden im Caching abgelaufene Datensätze automatisch entfernt, was Speicher freigibt. Für das Sitzungsmanagement stellt es sicher, dass inaktive Sitzungen beendet werden, was sowohl die Systemsicherheit als auch die Leistung verbessert.
1. Was ist der Zweck der Verwaltung von TTL für Schlüssel in Redis?
2. Was passiert, wenn Sie den PERSIST
-Befehl auf einen Schlüssel ausführen?
Danke für Ihr Feedback!