Heim  >  Artikel  >  Datenbank  >  So löschen Sie Daten in Redis

So löschen Sie Daten in Redis

silencement
silencementOriginal
2019-06-06 15:00:435727Durchsuche

So löschen Sie Daten in Redis

Es gibt drei häufig verwendete Löschstrategien in Redis:

1. Passives Löschen (Lazy Deletion): wenn ein Lese-/Schreibelement vorhanden ist abgelaufen Wenn ein Schlüssel gefunden wird, wird die Strategie zum verzögerten Löschen ausgelöst

2. Aktives Löschen (reguläres Löschen): Redis führt regelmäßige Inspektionen durch, um abgelaufene Schlüssel zu bereinigen; >

3. Wenn der Speicher die maximale Speicherkonfiguration erreicht, wird der Schlüssellöschvorgang ausgelöst

Aktive Löschung

In Redis regelmäßige Vorgänge werden von redis.c/serverCron implementiert und führen hauptsächlich die folgenden Vorgänge aus:

1. Aktualisieren Sie verschiedene statistische Informationen des Servers, wie Zeit, Speichernutzung, Datenbanknutzung usw.

2. Bereinigen Sie abgelaufene Schlüssel-Wert-Paare in der Datenbank.

3. Ändern Sie die Größe unzumutbarer Datenbanken.

4. Schließen und bereinigen Sie Clients mit fehlgeschlagenen Verbindungen.

5. Versuchen Sie den AOF- oder RDB-Persistenzbetrieb.

6. Wenn der Server der Master-Knoten ist, führen Sie eine regelmäßige Synchronisierung der Slave-Knoten durch.

Führen Sie im Clustermodus regelmäßige Synchronisierungs- und Verbindungstests für den Cluster durch.

Redis führt serverCron als Zeitereignis aus, um sicherzustellen, dass es von Zeit zu Zeit automatisch ausgeführt wird. Und da serverCron regelmäßig ausgeführt werden muss, während der Redis-Server ausgeführt wird, handelt es sich um ein zyklisches Zeitereignis: serverCron Es wird sein wird regelmäßig ausgeführt, bis der Server heruntergefahren wird.

Zusammenfassung

Wenn täglich eine große Anzahl von Schlüsseln in Redis abläuft (z. B. Dutzende Millionen), muss die Bereinigung abgelaufener Schlüssel erfolgen berücksichtigt:

Erhöhen Sie die Häufigkeit der aktiven Redis-Reinigung (durch Erhöhen des Hz-Parameters)

Bereinigen Sie abgelaufene Schlüssel manuell. Der Scanvorgang wird ausgelöst Vergessen Sie nicht, den Scanvorgang durchzuführen.

Die Anzahl der vom Befehl „dbsize“ zurückgegebenen Schlüssel.

Die vom Befehl „randomkey“ zurückgegebenen Schlüssel abgelaufene Schlüssel

Vom Scan-Befehl zurückgegebene Schlüssel, einschließlich abgelaufener Schlüssel. Die Anzahl der Schlüssel, die dem # Keyspace entsprechen

db6:keys=1034937352, Expires=994731489,avg_ttl=507838502

vom Schlüssel zurückgegebene Schlüssel

Info-Befehl ist gleich dbsize

expires bezieht sich auf die Anzahl der Schlüssel mit festgelegter Ablaufzeit

avg_ttl bezieht sich auf die durchschnittliche Ablaufzeit ( Einheit: Millisekunden) des Schlüssels mit festgelegter Ablaufzeit

Das obige ist der detaillierte Inhalt vonSo löschen Sie Daten in Redis. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn