informasi kontak saya
Surat[email protected]
2024-07-08
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Ketika node Redis (node Slave) menerima instruksi yang mirip dengan slaveof 127.0.0.1 6380 hingga node tersebut dapat terus menyalin data dari master, biasanya node tersebut melewati proses berikut:
Ketika slave menerima perintah slaveof, slave akan segera menyimpan alamat master baru.
Budak mempertahankan tugas terjadwal, yang akan mencoba membuat sambungan soket dengan master. Jika koneksi tidak dapat dibuat, maka akan dicoba lagi secara berkala hingga koneksi berhasil atau perintah slaveof no one diterima.
Setelah koneksi berhasil dibuat, budak akan mengirimkan perintah ping untuk komunikasi pertama. Jika budak tidak menerima balasan dari master, budak akan secara aktif memutuskan sambungan dan tugas terjadwal berikutnya akan mencoba kembali sambungan.
Jika master menerima perintah ping dari slave, ia tidak akan langsung membalasnya, tetapi akan melakukan otentikasi terlebih dahulu.Jika verifikasi gagal, pesan akan dikirim untuk menolak koneksi; jika verifikasi berhasil, respons keberhasilan koneksi akan dikirim ke budak.
Setelah komunikasi pertama berhasil, slave akan mengirimkan permintaan sinkronisasi data ke master. Ketika master menerima permintaan tersebut, ia akan membagi proses anak sehingga proses anak dapat segera dipertahankan secara asinkron.
Setelah persistensi selesai, master akan mengeluarkan proses anak dan membiarkan proses anak mengirim data ke budak secara asinkron. Budak akan terus menulis data yang diterima ke file persistensi lokal.
Selama proses sinkronisasi data budak, proses utama master masih terus menerima operasi tulis dari klien, dan tidak hanya menulis data baru ke memori master, tetapi juga menulisnya ke cache sinkronisasi. Setelah data dalam file persistensi master dikirim, master akan mengirimkan data baru dalam cache sinkronisasi ke budak, dan budak akan menulisnya ke file persistensi lokal.Sinkronisasi data selesai
Ketika sinkronisasi data antara budak dan master selesai, budak akan membaca file persisten lokal, mengembalikannya ke memori lokal, dan kemudian menyediakan layanan baca eksternal.
Selama proses penyediaan layanan eksternal oleh slave, master akan terus mengirimkan data baru ke slave secara bertahap untuk memastikan konsistensi data master-slave.