Inhaltsverzeichnis
1. Was ist Master&Slave?
2. Was kann es?
3. Wie wird gespielt?
sentinel-Monitor Der Name der überwachten Datenbank (benennen Sie sie selbst) IP-Port 1
Befehl: redis-sentinel /myredis/sentinel.conf # 🎜🎜#
Heim Datenbank Redis Wie implementiert Redis die Master-Slave-Replikation?

Wie implementiert Redis die Master-Slave-Replikation?

May 29, 2023 pm 02:21 PM
redis

    1. Was ist Master&Slave?

    Dies nennen wir Master-Slave-Replikation. Nachdem die Hostdaten aktualisiert wurden, werden sie gemäß der Konfiguration und Richtlinie automatisch mit dem Master-/Slave-Mechanismus synchronisiert zum Schreiben und der Slave hauptsächlich zum Lesen.

    2. Was kann es?

    1. Lese- und Schreibtrennung;

    2.

    3. Wie wird gespielt?

    1. Ausgestattet mit Slave (Bibliothek), aber nicht Master (Bibliothek);

    2. Slaveof [Hauptbibliothek-IP] #; 🎜🎜 #

    • Ergänzung: Jedes Mal, wenn der Slave vom Master getrennt wird, muss er erneut verbunden werden, es sei denn, Sie konfigurieren ihn in der redis.conf-Datei;

      #🎜🎜 #

    • Geben Sie info replication ein, um Redis-Master-Slave-Informationen anzuzeigen.
    • 3. Konfigurationsdateidetails ändern

    - Mehrere redis.conf-Dateien kopieren

    #🎜🎜 ## ??

    -PID-Dateiname

    Wie implementiert Redis die Master-Slave-Replikation?

    -Protokolldateiname

    Wie implementiert Redis die Master-Slave-Replikation?

    #🎜 🎜#- Dump.rdb-Name

    Wie implementiert Redis die Master-Slave-Replikation?

    4. 3 gängige Tricks

    -Ein Meister und zwei Diener#🎜🎜 #

    Wie implementiert Redis die Master-Slave-Replikation?

    Ein Master, zwei Slaves, der Slave kann nur lesen, aber nicht schreiben; wenn der Slave vom Master getrennt wird, muss der Slave erneut verbunden werden, um die Verbindung herzustellen vorherige Master-Slave-Beziehung; nachdem der Master aufgelegt hat, bleibt die Master-Beziehung bestehen und kann durch einen Neustart des Masters wiederhergestellt werden.

    - Der vorherige Slave kann der Master des nächsten Slaves sein, und der Slave kann auch andere Slaves Verbindungs- und Synchronisationsanfragen empfangen, dann fungiert der Slave als Master des nächsten Slaves in der Kette. Dadurch kann der Schreibdruck des Masters effektiv reduziert werden. Wenn der Slave-Server auf halbem Weg den Master-Server für die Datensynchronisierung wechselt, werden die alten Daten gelöscht und die Synchronisierung mit dem neuesten Master-Server wird wiederhergestellt. Wie implementiert Redis die Master-Slave-Replikation?

    - Konzentrieren Sie sich auf Kunden

    Wenn der Master auflegt, kann der Slave den Befehl „slaveof nobody“ eingeben, um die Synchronisierung des aktuellen Redis mit anderen Redis-Daten des Masters zu stoppen und ihn umzuschalten in Master Redis.

    Wie implementiert Redis die Master-Slave-Replikation? 4. Replikationsprinzip

    1. Nachdem der Slave gestartet ist und sich erfolgreich mit dem Master verbunden hat, sendet er einen Synchronisierungsbefehl; erhält den Befehl zum Starten. Nach dem Speichervorgang werden alle empfangenen Befehle zum Ändern des Datensatzes gleichzeitig gesammelt. Nachdem der Hintergrundprozess ausgeführt wurde, überträgt der Master die gesamte Datendatei an den Slave, um eine vollständige Synchronisierung durchzuführen. 🎜🎜#

    3, Vollständige Kopie: Der Slave-Dienst speichert und lädt die Datenbankdateidaten in den Speicher;

    4: Der Master übergibt weiterhin alle neu gesammelten Änderungsbefehle an den Slave drehen, vollständige Synchronisierung;

    Wie implementiert Redis die Master-Slave-Replikation?5 Aber solange der Master wieder verbunden ist, wird automatisch eine vollständige Synchronisierung (vollständige Kopie) durchgeführt.

    5. Sentinel-Modus (Sentinel)

    Eine kundenorientierte automatische Version, die im Hintergrund überwachen kann, ob die Master-Bibliothek fehlerhaft ist Konvertieren Sie die Slave-Bibliothek basierend auf der Anzahl der Stimmen automatisch in die Hauptbibliothek. Eine Gruppe von Sentinels kann mehrere Master gleichzeitig überwachen.

    Wie implementiert Redis die Master-Slave-Replikation?Verwendungsschritte:

    1. Erstellen Sie eine neue sentinel.conf-Datei im selben Verzeichnis wie die entsprechende redis.conf des Masters Darf nicht falsch sein;# 🎜🎜#

    2. Konfigurieren Sie den Sentinel und geben Sie den Inhalt in die Datei sentinel.conf ein:

    sentinel-Monitor Der Name der überwachten Datenbank (benennen Sie sie selbst) IP-Port 1

    Erläuterung: Die letzte Nummer 1 oben bedeutet, dass der Slave nach dem Auflegen des Hosts abstimmt, um zu sehen, wer übernimmt die Rolle des Gastgebers. Nach Erhalt der Anzahl der Stimmen wird der Slave zum Gastgeber.

    3. Sentinel-Modus starten:

    Befehl: redis-sentinel /myredis/sentinel.conf # 🎜🎜#

    Hinweis: Die oben genannten sentinel.conf-Pfade werden entsprechend ihren tatsächlichen Bedingungen konfiguriert

    6 copying# 🎜🎜#

    Verzögerung: Da alle Schreibvorgänge auf dem Master ausgeführt und dann mit dem Slave synchronisiert werden, kommt es zu einer gewissen Verzögerung bei der Synchronisierung vom Master zur Slave-Maschine, wenn das System sehr ausgelastet ist Probleme Es wird schwerwiegender sein, und die Zunahme der Anzahl der Slave-Maschinen wird dieses Problem auch schwerwiegender machen.

    Redis-Master, Slave-Knoten-Bereitstellungsdetails

      1 Erstellen Sie zwei redis.conf-Dateien, eine Master- und eine Slave-Datei
    • redis_6379.conf
      redis_6380.conf
      Nach dem Login kopieren

      2 Hauptkonfiguration

      bind 127.0.0.1
      port 6379
      protected-mode yes
      daemonize yes
      pidfile /var/run/redis_6379.pid
      logfile "/Data/apps/redis-3.2.12/logs/redis_6379.log"
      dbfilename dump_6379.rdb
      dir /Data/apps/redis-3.2.12/workplace
      requirepass paopao
      Nach dem Login kopieren
    • 3. Slave-Konferenz-Hauptkonfiguration
    • bind 127.0.0.1
      port 6380
      protected-mode yes
      daemonize yes
      pidfile /var/run/redis_6380.pid
      logfile "/Data/apps/redis-3.2.12/logs/redis_6380.log"
      dbfilename dump_6380.rdb
      dir /Data/apps/redis-3.2.12/workplace
      slaveof 127.0.0.1 6379
      masterauth paopao
      Nach dem Login kopieren

      4. Starten Sie den Master-Slave-Redis-Server-Prozess

      redis-server /Data/apps/redis-3.2.12/conf/redis_6379.conf
      redis-server /Data/apps/redis-3.2.12/conf/redis_6380.conf
      Nach dem Login kopieren
    • 5. Andere verwandte Konfiguration# 🎜🎜 #
      # 当从库同主机失去连接或者复制正在进行,从机库有两种运行方式:
      # 1) 如果slave-serve-stale-data设置为yes(默认设置),从库会继续相应客户端的请求
      # 2) 如果slave-serve-stale-data是指为no,除去INFO和SLAVOF命令之外的任何请求都会返回一个
      #    错误"SYNC with master in progress"
      slave-serve-stale-data yes
      slave-read-only yes
      # 从库会按照一个时间间隔向主库发送PINGs.可以通过repl-ping-slave-period设置这个时间间隔,默认是10秒
      repl-ping-slave-period 10
      # repl-timeout 设置主库批量数据传输时间或者ping回复时间间隔,默认值是60秒
      # 一定要确保repl-timeout大于repl-ping-slave-period
      repl-timeout 60
      # slave节点磁盘慢, 网速快时, 置为yes, master上的rdb文件将以socket方式传输, 跳过磁盘存储
      repl-diskless-sync no
      # 传输前等待秒数, 为了等待更多的slave节点加入
      repl-diskless-sync-delay 5
      # 传输时,是否禁用tcp nodelay
      repl-disable-tcp-nodelay no
      # 复制缓冲区大小
      repl-backlog-size 1mb
      # 复制缓冲区释放周期
      repl-backlog-ttl 3600
      # 为了sentinal模式, 选举master准备, 数值越小, 优先级越高
      slave-priority 100
      # require at least 3 slaves with a lag <= 10 seconds use
      min-slaves-to-write 3
      min-slaves-max-lag 10
      # 可覆盖bind, port 配置, 对外ip port
      slave-announce-ip 5.5.5.5
      slave-announce-port 1234
      Nach dem Login kopieren

    Das obige ist der detaillierte Inhalt vonWie implementiert Redis die Master-Slave-Replikation?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

    Erklärung dieser Website
    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

    Heiße KI -Werkzeuge

    Undresser.AI Undress

    Undresser.AI Undress

    KI-gestützte App zum Erstellen realistischer Aktfotos

    AI Clothes Remover

    AI Clothes Remover

    Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

    Undress AI Tool

    Undress AI Tool

    Ausziehbilder kostenlos

    Clothoff.io

    Clothoff.io

    KI-Kleiderentferner

    AI Hentai Generator

    AI Hentai Generator

    Erstellen Sie kostenlos Ai Hentai.

    Heißer Artikel

    R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
    3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
    R.E.P.O. Beste grafische Einstellungen
    3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
    R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
    3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
    WWE 2K25: Wie man alles in Myrise freischaltet
    3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

    Heiße Werkzeuge

    Notepad++7.3.1

    Notepad++7.3.1

    Einfach zu bedienender und kostenloser Code-Editor

    SublimeText3 chinesische Version

    SublimeText3 chinesische Version

    Chinesische Version, sehr einfach zu bedienen

    Senden Sie Studio 13.0.1

    Senden Sie Studio 13.0.1

    Leistungsstarke integrierte PHP-Entwicklungsumgebung

    Dreamweaver CS6

    Dreamweaver CS6

    Visuelle Webentwicklungstools

    SublimeText3 Mac-Version

    SublimeText3 Mac-Version

    Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

    Lösung für den Fehler 0x80242008 bei der Installation von Windows 11 10.0.22000.100 Lösung für den Fehler 0x80242008 bei der Installation von Windows 11 10.0.22000.100 May 08, 2024 pm 03:50 PM

    1. Starten Sie das Menü [Start], geben Sie [cmd] ein, klicken Sie mit der rechten Maustaste auf [Eingabeaufforderung] und wählen Sie Als [Administrator] ausführen. 2. Geben Sie nacheinander die folgenden Befehle ein (kopieren und fügen Sie sie sorgfältig ein): SCconfigwuauservstart=auto, drücken Sie die Eingabetaste. SCconfigbitsstart=auto, drücken Sie die Eingabetaste. SCconfigcryptsvcstart=auto, drücken Sie die Eingabetaste. SCconfigtrustedinstallerstart=auto, drücken Sie die Eingabetaste. SCconfigwuauservtype=share, drücken Sie die Eingabetaste. netstopwuauserv, drücken Sie die Eingabetaste für netstopcryptS

    Golang API-Caching-Strategie und -Optimierung Golang API-Caching-Strategie und -Optimierung May 07, 2024 pm 02:12 PM

    Die Caching-Strategie in GolangAPI kann die Leistung verbessern und die Serverlast reduzieren. Häufig verwendete Strategien sind: LRU, LFU, FIFO und TTL. Zu den Optimierungstechniken gehören die Auswahl geeigneter Cache-Speicher, hierarchisches Caching, Invalidierungsmanagement sowie Überwachung und Optimierung. Im praktischen Fall wird der LRU-Cache verwendet, um die API zum Abrufen von Benutzerinformationen aus der Datenbank zu optimieren. Andernfalls kann der Cache nach dem Abrufen aus der Datenbank aktualisiert werden.

    Caching-Mechanismus und Anwendungspraxis in der PHP-Entwicklung Caching-Mechanismus und Anwendungspraxis in der PHP-Entwicklung May 09, 2024 pm 01:30 PM

    In der PHP-Entwicklung verbessert der Caching-Mechanismus die Leistung, indem er häufig aufgerufene Daten vorübergehend im Speicher oder auf der Festplatte speichert und so die Anzahl der Datenbankzugriffe reduziert. Zu den Cache-Typen gehören hauptsächlich Speicher-, Datei- und Datenbank-Cache. In PHP können Sie integrierte Funktionen oder Bibliotheken von Drittanbietern verwenden, um Caching zu implementieren, wie zum Beispiel Cache_get() und Memcache. Zu den gängigen praktischen Anwendungen gehören das Zwischenspeichern von Datenbankabfrageergebnissen zur Optimierung der Abfrageleistung und das Zwischenspeichern von Seitenausgaben zur Beschleunigung des Renderings. Der Caching-Mechanismus verbessert effektiv die Reaktionsgeschwindigkeit der Website, verbessert das Benutzererlebnis und reduziert die Serverlast.

    So aktualisieren Sie Win11 Englisch 21996 auf vereinfachtes Chinesisch 22000_So aktualisieren Sie Win11 Englisch 21996 auf vereinfachtes Chinesisch 22000 So aktualisieren Sie Win11 Englisch 21996 auf vereinfachtes Chinesisch 22000_So aktualisieren Sie Win11 Englisch 21996 auf vereinfachtes Chinesisch 22000 May 08, 2024 pm 05:10 PM

    Zuerst müssen Sie die Systemsprache auf die Anzeige in vereinfachtem Chinesisch einstellen und neu starten. Wenn Sie die Anzeigesprache zuvor auf vereinfachtes Chinesisch geändert haben, können Sie diesen Schritt natürlich einfach überspringen. Beginnen Sie als Nächstes mit dem Betrieb der Registrierung regedit.exe, navigieren Sie direkt zu HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlNlsLanguage in der linken Navigationsleiste oder der oberen Adressleiste und ändern Sie dann den InstallLanguage-Schlüsselwert und den Standardschlüsselwert auf 0804 (wenn Sie ihn in Englisch ändern möchten). us, Sie müssen zunächst die Anzeigesprache des Systems auf en-us einstellen, das System neu starten und dann alles auf 0409 ändern) Sie müssen das System an dieser Stelle neu starten.

    Wie verwende ich den Redis-Cache bei der PHP-Array-Paginierung? Wie verwende ich den Redis-Cache bei der PHP-Array-Paginierung? May 01, 2024 am 10:48 AM

    Durch die Verwendung des Redis-Cache kann die Leistung des PHP-Array-Pagings erheblich optimiert werden. Dies kann durch die folgenden Schritte erreicht werden: Installieren Sie den Redis-Client. Stellen Sie eine Verbindung zum Redis-Server her. Erstellen Sie Cache-Daten und speichern Sie jede Datenseite in einem Redis-Hash mit dem Schlüssel „page:{page_number}“. Rufen Sie Daten aus dem Cache ab und vermeiden Sie teure Vorgänge auf großen Arrays.

    So finden Sie die von Win11 heruntergeladene Update-Datei. Geben Sie den Speicherort der von Win11 heruntergeladenen Update-Datei an So finden Sie die von Win11 heruntergeladene Update-Datei. Geben Sie den Speicherort der von Win11 heruntergeladenen Update-Datei an May 08, 2024 am 10:34 AM

    1. Doppelklicken Sie zunächst auf dem Desktop auf das Symbol [Dieser PC], um es zu öffnen. 2. Doppelklicken Sie dann mit der linken Maustaste, um [Laufwerk C] einzugeben. Systemdateien werden im Allgemeinen automatisch auf Laufwerk C gespeichert. 3. Suchen Sie dann den Ordner [Windows] auf dem Laufwerk C und doppelklicken Sie, um ihn aufzurufen. 4. Nachdem Sie den Ordner [Windows] aufgerufen haben, suchen Sie den Ordner [SoftwareDistribution]. 5. Suchen Sie nach der Eingabe den Ordner [Download], der alle Win11-Download- und Update-Dateien enthält. 6. Wenn wir diese Dateien löschen möchten, löschen Sie sie einfach direkt in diesem Ordner.

    PHP-Redis-Caching-Anwendungen und Best Practices PHP-Redis-Caching-Anwendungen und Best Practices May 04, 2024 am 08:33 AM

    Redis ist ein leistungsstarker Schlüsselwert-Cache. Die PHPRedis-Erweiterung stellt eine API für die Interaktion mit dem Redis-Server bereit. Führen Sie die folgenden Schritte aus, um eine Verbindung zu Redis herzustellen sowie Daten zu speichern und abzurufen: Verbinden: Verwenden Sie die Redis-Klassen, um eine Verbindung zum Server herzustellen. Speicherung: Verwenden Sie die Set-Methode, um Schlüssel-Wert-Paare festzulegen. Abrufen: Verwenden Sie die get-Methode, um den Wert des Schlüssels abzurufen.

    Warum tritt bei der Installation einer Erweiterung mit PECL in einer Docker -Umgebung ein Fehler auf? Wie löst ich es? Warum tritt bei der Installation einer Erweiterung mit PECL in einer Docker -Umgebung ein Fehler auf? Wie löst ich es? Apr 01, 2025 pm 03:06 PM

    Ursachen und Lösungen für Fehler Bei der Verwendung von PECL zur Installation von Erweiterungen in der Docker -Umgebung, wenn die Docker -Umgebung verwendet wird, begegnen wir häufig auf einige Kopfschmerzen ...

    See all articles