Was ist Redis Cluster Split Brain?
Die Aufteilung des Redis-Clusters bedeutet, dass sich der Redis-Masterknoten, der Redis-Slave-Knoten und der Sentinel-Cluster aufgrund von Netzwerkproblemen in unterschiedlichen Netzwerkpartitionen befinden. Zu diesem Zeitpunkt kann der Sentinel-Cluster die Existenz nicht erkennen des Masters, also befördern Sie den Slave-Knoten zum Master-Knoten. (Empfohlenes Lernen:
Lösung
In der Redis-Konfigurationsdatei gibt es zwei Parameter
min-slaves-to-write 3 min-slaves-max-lag 10Der erste Parameter zeigt an Mindestanzahl der mit dem Master verbundenen SlavesDer zweite Parameter gibt die maximale Verzögerungszeit an, die der Slave benötigt, um eine Verbindung zum Master herzustellenWenn die Anzahl der mit dem Master verbundenen Slaves geringer ist als die erste Parameter und die Ping-Verzögerung. Wenn die Zeit kleiner oder gleich dem zweiten Parameter ist, lehnt der Master die Schreibanforderung ab. Nach der Konfiguration dieser beiden Parameter lehnt der ursprüngliche Masterknoten die Schreibanforderung ab, wenn es zu einer Cluster-Brain-Split kommt vom Client, wodurch der Umfang der Datensynchronisierung verringert werden kann. Hinweis: Die Parameter in der neueren Version der Datei redis.conf wurden zu
min-replicas-to-write 3 min-replicas-max-lag 10Das Datenverlustproblem bei der asynchronen Replikation in Redis kann auch diese beiden Parameter verwenden
Das obige ist der detaillierte Inhalt vonSo verhindern Sie Split-Brain im Redis-Cluster. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!