Heim  >  Artikel  >  Datenbank  >  Warum gibt es mehr als drei Redis-Cluster?

Warum gibt es mehr als drei Redis-Cluster?

(*-*)浩
(*-*)浩Original
2019-06-17 14:48:545075Durchsuche

Redisl-Cluster mit mehr als 3 werden durch Erhöhen der Anzahl von Sentinel-Knoten verbessert, um die Genauigkeit der Fehlerbeurteilung zu verbessern, da die Wahl des Leiters mindestens die Hälfte plus 1 Knoten erfordert und eine ungerade Anzahl von Knoten verwendet werden kann Die Grundlage für die Erfüllung dieser Bedingung ist das Speichern eines Knotens.

Warum gibt es mehr als drei Redis-Cluster?

Einfach ausgedrückt: Wenn es 3 Sentinel-Knoten gibt und ein Redis-Problem auftritt, tritt Sentinel sofort ein Bei der Abstimmung ist die Person nur dann offline, wenn mehr als die Hälfte der Stimmen abgegeben wird! , und ging schließlich objektiv offline, daher sind 3 Sentinel-Knoten erforderlich (Empfohlenes Lernen: Redis-Video-Tutorial)

Der Sentinel-Modus ist zunächst ein spezieller Modus Sentinel-Befehle werden als unabhängiger Prozess bereitgestellt. Das Prinzip besteht darin, dass der Sentinel mehrere laufende Redis-Instanzen überwacht, indem er Befehle sendet und auf die Antwort des Redis-Servers wartet.

Der Wachposten hat hier zwei Funktionen

Durch das Senden von Befehlen kehrt der Redis-Server zurück, um seinen Betriebsstatus zu überwachen, einschließlich des Master-Servers und des Slave-Servers.

Wenn Sentinel erkennt, dass der Master ausgefallen ist, schaltet es automatisch den Slave auf den Master um und benachrichtigt dann andere Slave-Server über den Veröffentlichungs- und Abonnementmodus, ändert die Konfigurationsdatei und lässt sie den Host wechseln.

Es kann jedoch zu Problemen kommen, wenn ein Sentinel-Prozess den Redis-Server überwacht. Aus diesem Grund können wir mehrere Sentinels zur Überwachung verwenden. Jeder Sentinel wird ebenfalls überwacht, wodurch ein Multi-Sentinel-Modus entsteht.

Beschreiben Sie den Failover-Prozess in Worten.

Angenommen, der Hauptserver ist ausgefallen und Sentinel 1 erkennt dieses Ergebnis nicht sofort. Es ist nur so, dass Sentinel 1 subjektiv davon ausgeht, dass der Hauptserver nicht verfügbar ist offline. Wenn die nachfolgenden Sentinels ebenfalls feststellen, dass der Hauptserver nicht verfügbar ist und die Anzahl einen bestimmten Wert erreicht, findet eine Abstimmung zwischen den Sentinels statt. Das Ergebnis der Abstimmung wird von einem Sentinel veranlasst, einen Failover-Vorgang durchzuführen. Nachdem der Wechsel erfolgreich war, wechselt jeder Sentinel den von ihm überwachten Slave-Server im Publish-Subscribe-Modus zum Host. Dieser Vorgang wird als objektiv offline bezeichnet. Auf diese Weise ist für den Kunden alles transparent.

Weitere technische Artikel zum Thema Redis finden Sie in der Spalte Einführung in das Redis-Datenbanknutzungs-Tutorial, um mehr zu erfahren!

Das obige ist der detaillierte Inhalt vonWarum gibt es mehr als drei Redis-Cluster?. 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