Warum ist Persistenz erforderlich?
Normalerweise werden alle Redis-Daten im Speicher gespeichert, wenn die Datenbank ausfällt und neu gestartet wird Im Redis-Cluster- oder Redis-Sentinel-Modus dauert die Wiederherstellung der Master-Slave-Synchronisationsdaten noch einige Zeit.
Die Persistenzfunktion kann Datenverluste durch Prozessbeendigung effektiv vermeiden. Dies kann erreicht werden, indem die zuvor gespeicherten Dateien beim nächsten Neustart verwendet werden .
Nach Verwendung der Redis-Persistenz werden die Daten auf der Festplatte gespeichert. Bei der Durchführung einer inkrementellen Synchronisierung der Datenbank ist der Zeitaufwand deutlich geringer als bei der Durchführung einer vollständigen Synchronisierung. Die Datenwiederherstellung nach Ausfällen spielt in der Produktionsumgebung eine sehr wichtige Rolle! 🎜🎜#RDB ist ein Snapshot-Datenspeicher, der regelmäßig alle Redis-Daten zum aktuellen Zeitpunkt auf der Festplatte speichert.
AOF ist eine anhangbasierte Speichermethode, die Redis-Schreibvorgänge in Echtzeit auf der Festplatte aufzeichnet.
Nachteile:
RDB-Persistenz speichert Redis-Daten nur regelmäßig, wenn Redis abstürzt Bevor die nächste Speicherung ausgelöst wird, gehen alle Daten im Speicher verloren.
Wenn die Datenmenge groß ist, verbraucht die Gabelung des Unterprozesses außerdem viel CPU, wie im folgenden Überwachungsdiagramm RDB gezeigt Persistenz wird alle 1800er Jahre ausgelöst. Der CPU-Verbrauch von Redis wird stark ansteigen. Während des Fork-Child-Prozesses kann es zu einer sekundenlangen Blockierung kommen. #🎜🎜 ## 🎜🎜 ## 🎜🎜 ## 🎜🎜 ## 🎜🎜 ## 🎜🎜 ## 🎜🎜##Parameter:#🎜🎜 ## 🎜🎜 ## 🎜🎜 ## 🎜🎜 ## 🎜🎜## Wenn die Speicheroption als „Leeres Speichern“ konfiguriert ist, ist die RDB-Persistenz deaktiviert. Es können mehrere Triggerbedingungen zum Einschalten der RDB-Persistenz konfiguriert werden. Beispielsweise löst 1 Schreibvorgang einen Snapshot innerhalb von 900 Sekunden aus/10 Schreibvorgänge lösen einen Snapshot innerhalb von 300 Sekunden aus , das entsprechend der eigenen Redis-Schreibsituation frei konfiguriert werden kann, um Leistung und Datensicherheit in Einklang zu bringen. Es wird empfohlen,
stop-writes-on-bgsave-error zu aktivieren. Wenn in redis bgsave ein Fehler auftritt, wird die Anforderung des Clients normalerweise aufgrund unzureichender Festplatte oder abgelehnt Speicherplatz und Überwachung sind erforderlich, um die Datensicherheit zu verbessern.AOF sorgt für Persistenz, indem Befehle für Redis-Schreibvorgänge gespeichert werden verbessert, und bei ungewöhnlichen Ausfallzeiten gehen bis zu 1 Sekunde Daten verloren. Die Schreibvorgänge von Redis werden in der AOF-Datei aufgezeichnet. Das Format der Datei ist klar und leicht verständlich und kann leicht geändert werden, wodurch die Datenrekonstruktion erleichtert wird.
Mit zunehmender Redis-Schreibanzahl wird die AOF-Speicherdatei größer und größer wirken sich auf die Wiederherstellungszeit und den Speicherplatz der Datenbankdaten aus, daher müssen wir das AOF-Neuschreiben konfigurieren, um die Größe der AOF-Datei zu reduzieren. Hier können wir die standardmäßigen zwei Triggerbedingungskonfigurationen verwenden oder den BGREWRITEAOF-Befehl manuell aufrufen .
Parameter:
appendonly legt fest, ob die AOF-Persistenz aktiviert werden soll.
appendfsync verfügt über drei Persistenzmodi: immer/jede Sekunde/Nein. Berücksichtigen Sie dabei die Geschwindigkeit und Sicherheit der Datenspeicherung, konfigurieren Sie sie auf „jede Sekunde“ und synchronisieren Sie die Daten jede Sekunde mit der Festplatte.
3. Vergleich der Vor- und Nachteile von RDB- und AOF-PersistenzBeide Methoden haben ihre eigenen Vorzüge. Vergleichen wir die beiden Redis-Daten Persistenzmethoden:
PS: Die Wahl der Persistenz muss zusammen mit der Master-Slave-Strategie von Redis berücksichtigt werden, da Master-Slave-Replikation und -Persistenz auch die Funktion der Datensicherung haben und der Host-Master und der Slave-Slave die Persistenz unabhängig voneinander wählen können Lösung.
Das obige ist der detaillierte Inhalt vonWas sind die Persistenzmethoden von Redis?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!