Der Prozess der Redis-Master-Slave-Replikationssynchronisierung
1. Der Slave-Dienst sendet einen Synchronisierungsbefehl an den Master Dienst, der eine vollständige Synchronisierung erfordert (Empfohlenes Lernen: Redis-Video-Tutorial)
2. Wenn der Hauptdienst den Synchronisierungsbefehl vom Slave-Dienst empfängt, gibt er einen untergeordneten Prozess aus, um ihn auszuführen bgsave-Befehl im Hintergrund (nicht blockierend), um eine RDB-Datei zu generieren und die
RDB-Datei an den Slave-Dienst zu senden
3. Der Slave-Dienst lädt dann die empfangene RDB Datei in seinen eigenen Redis-Speicher
4. Warten Nachdem der Slave-Dienst das Laden der RDB abgeschlossen hat, sendet der Master-Dienst alle Schreibbefehle im Puffer an den Slave-Dienst
5 Der Dienst lädt alle Schreibbefehle des Master-Dienstes in den Speicher, um eine vollständige Datensynchronisierung zu erreichen
6. Wenn der Slave-Dienst das nächste Mal Daten synchronisieren muss, muss er nur seine eigene Offset-Position senden (entspricht der Position von MySQL Binlog). Nur die neu hinzugefügten Daten werden synchronisiert und eine vollständige Synchronisierung ist nicht mehr erforderlich 1. Konfigurieren Sie einfach die Slave-Dienstkonfigurationsdatei
[root@localhost ~]# vim /app/redis/etc/redis.conf ….. slaveof 192.168.1.9 6379 #添加属于某台主机的从 服务 ….. masterauth 123456 #从服务连接主服的密码 …… slave-read-only yes #从服务只读,不可在命令行写入数据 ……
[root@localhost ~]# redis-server /app/redis/etc/redis.conf [root@localhost ~]# redis-cli 127.0.0.1:6379> auth 123456 OK 127.0.0.1:6379> info replication #Replication role:slave master_host:192.168.1.9 master_port:6379 master_link_status:up …… ……
Das obige ist der detaillierte Inhalt vonSo führen Sie eine Master-Slave-Replikation in Redis durch. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!