Jadual Kandungan
Tuan-hamba konfigurasi asas
Master Redis konfigurasi
Konfigurasi daripada Redis
3. Konfigurasikan replikasi tuan-hamba
4. Mulakan nod hamba
5. Sambungkan nod hamba
6 contoh untuk melihat sama ada tika 6380 boleh disegerakkan dalam masa Data yang baru diubah suai
Peranan konfigurasi tuan-hamba
Prinsip kerja tuan-hamba Redis
Salinan penuh replikasi tuan-hamba
1. Wujudkan sambungan Socker yang panjang Redis
4 Terima petikan rdb daripada nod
6. Terima fail cache penimbal daripada nod
7. Master Redis secara berterusan menghantar arahan kepada nod hamba melalui sambungan panjang Socker
Ikhtisar
Salinan separa salinan tuan-hamba
Penyegerakan tambahan replikasi tuan-hamba
Pengesan degupan jantung replikasi tuan-hamba
1. Kesan status sambungan tuan-hamba
2. Pelaksanaan tambahan hamba-min
3. Kesan kehilangan arahan
Cara menilai sama ada salinan penuh atau salinan separa
Rumah pangkalan data Redis Ketahui lebih lanjut tentang replikasi tuan-hamba dalam Redis

Ketahui lebih lanjut tentang replikasi tuan-hamba dalam Redis

Dec 27, 2021 am 10:17 AM
redis replikasi tuan-hamba

Artikel ini akan memperkenalkan anda kepada replikasi tuan-hamba dalam Redis, memperkenalkan konfigurasi tuan-hamba asas, peranan dan prinsip konfigurasi tuan-hamba, saya harap ia akan membantu anda!

Ketahui lebih lanjut tentang replikasi tuan-hamba dalam Redis

Redis menyokong fungsi replikasi master-slave, yang boleh dilakukan dengan melaksanakan slaveof (ditukar kepada replicaof selepas versi Redis5) atau menetapkan slaveof dalam fail konfigurasi (ditukar kepada replicaof selepas Versi Redis5) Hidupkan fungsi salin. [Cadangan berkaitan: Tutorial video Redis]

  • Satu induk dan dua gugusan

Ketahui lebih lanjut tentang replikasi tuan-hamba dalam Redis

  • Satu master Berbilang hamba

Ketahui lebih lanjut tentang replikasi tuan-hamba dalam Redis

Tuan-hamba konfigurasi asas

Master Redis konfigurasi

Master Redis konfigurasi pada dasarnya tidak diperlukan Pengubahsuaian, bahagian utama adalah untuk mengkonfigurasi daripada Redis

Konfigurasi daripada Redis

1. Salin fail redis.conf

2. Pengubahsuaian konfigurasi yang berkaitan

# salve的端口号
port 6380 

#把pid进程号写入pidfile配置的文件
pidfile /var/run/redis_6380.pid 

logfile "6380.log"  

#指定数据存放目录
dir /usr/local/redis‐5.0.3/data/6380 

#需要注释掉bind
#bind127.0.0.1(bind绑定的是自己机器网卡的ip,如果有多块网卡可以配多个ip,代表允许客户端通过机器的哪些网卡ip去访问,内网一般可以不配置bind,注释掉即可)
Salin selepas log masuk

3. Konfigurasikan replikasi tuan-hamba

#从本机master6379的redis实例复制数据,Redis5.0之前使用slaveof
replicaof 192.168.0.60 6379

#配置从节点只读
replica‐read‐only yes
Salin selepas log masuk

4. Mulakan nod hamba

redis‐server redis.conf
Salin selepas log masuk

5. Sambungkan nod hamba

redis‐cli ‐p 6380
Salin selepas log masuk

6 contoh untuk melihat sama ada tika 6380 boleh disegerakkan dalam masa Data yang baru diubah suai

docker run  --name redis-6381 -v /Users/yujiale/docker/redis/conf/redis6381.conf:/etc/redis/redis.conf -v /Users/yujiale/docker/redis/conf/sentinel6381.conf:/etc/redis/sentine.conf -v /Users/yujiale/docker/redis/data6381:/data --network localNetwork --ip 172.172.0.14 -p 16381:6379 -d redis:6.2.6 redis-server /etc/redis/redis.conf --appendonly yes
Salin selepas log masuk

Peranan konfigurasi tuan-hamba

Pemisahan baca dan tulis

  • Satu tuan dan berbilang hamba, penyegerakan hamba tuan
  • Tuan bertanggungjawab untuk menulis, dan hamba bertanggungjawab membaca
  • Meningkatkan prestasi dan daya pengeluaran Redis
  • Isu konsistensi data antara tuan dan hamba

Pemulihan bencana data

  • Hamba adalah sandaran tuan
  • Tuan sedang down, dan hamba boleh membaca tetapi tidak menulis
  • Secara lalai, tuan Selepas masa henti, mesin hamba tidak boleh digunakan oleh hos
  • Sentinel boleh melaksanakan pertukaran tuan-hamba untuk mencapai ketersediaan yang tinggi

Prinsip kerja tuan-hamba Redis

Salinan penuh replikasi tuan-hamba

Hanya kali pertama hamba Redis menyambung kepada tuan Redis ialah salinan penuh Jika ia adalah penyambungan semula jangka pendek, ia mungkin salinan penuh atau salinan separa.

  • Carta Aliran

Ketahui lebih lanjut tentang replikasi tuan-hamba dalam Redis

Ketahui lebih lanjut tentang replikasi tuan-hamba dalam Redis

1. Wujudkan sambungan Socker yang panjang Redis

Slaver mewujudkan sambungan soket dengan induk

pemproses acara fail berkaitan slaver

  • Pemproses ini menerima fail RDB (salinan penuh) dan menerima komunikasi Master Tulis arahan (salinan tambahan)

Ketahui lebih lanjut tentang replikasi tuan-hamba dalam Redis

  • Selepas pelayan induk menerima sambungan Soket pelayan hamba, ia mencipta status klien yang sepadan. Ia bersamaan dengan pelayan hamba yang menjadi pelanggan pelayan induk.

Ketahui lebih lanjut tentang replikasi tuan-hamba dalam Redis

  • Hantar arahan ping

    • Slaver menghantar arahan ping kepada Master

      • 1 Semak status baca dan tulis soket

      • 2. Semak sama ada Master boleh memprosesnya secara normal

    • Respons Master:

      • 1 ralat, menunjukkan bahawa Master tidak normal

      • 3, menunjukkan tamat masa rangkaian

Pengesahan kebenaranKetahui lebih lanjut tentang replikasi tuan-hamba dalam Redis

    Selepas tuan dan hamba disambungkan seperti biasa, lakukan pengesahan kebenaran
  • Tuan tidak menetapkan kata laluan (requirepass=""), dan hamba tidak perlu menetapkan kata laluan (masterauth="" ")

Tuan menetapkan kata laluan (requirepass!=""), hamba perlu menetapkan kata laluan (masterauth=nilai requirepass master)

atau hamba menghantar kata laluan kepada tuan melalui arahan auth

2. Redis utama menerima arahan PSYNC Ketahui lebih lanjut tentang replikasi tuan-hamba dalam Redis

Selepas Redis utama menerima arahan PSYNC, melaksanakan arahan bgsave akan menghasilkan petikan rdb terkini,

3 menghantar petikan rdb kepada hamba Redis

Apabila tuan Redis menghantar petikan rdb kepada hamba Redis, tuan akan terus menerima permintaan pelanggan, dan ia akan Permintaan yang boleh mengubah suai set data dicache dalam ingatan dan disimpan dalam cache penimbal relp
  • Fasa syot kilat penyegerakan: Master mencipta dan menghantar syot kilat RDB kepada Hamba, dan Hamba memuatkan dan menghuraikan syot kilat. Master juga menyimpan arahan tulis baharu yang dijana semasa fasa ini ke dalam penimbal.

4 Terima petikan rdb daripada nod

Selepas menerima petikan rdb daripada nod, kosongkan data lama dan muatkan fail rdb

5. Redis induk menghantar fail cache penimbal kepada Redis hamba

Fasa penimbal tulis segerak: Master menyegerakkan perintah operasi tulis yang disimpan dalam penimbal kepada Slave.

6. Terima fail cache penimbal daripada nod

Terima fail cache penimbal daripada nod dan muatkan fail cache penimbal ke dalam memori

7. Master Redis secara berterusan menghantar arahan kepada nod hamba melalui sambungan panjang Socker

Redis hamba menerima arahan yang dihantar oleh Redis tuan dan melaksanakan arahan semasa

Ikhtisar

Jika anda mengkonfigurasi hamba untuk tuan, tidak kira sama ada hamba bersambung kepada tuan buat kali pertama, ia akan menghantar arahan PSYNC kepada tuan untuk meminta salinan data. Selepas induk menerima arahan PSYNC, ia akan melakukan ketekunan data di latar belakang dan menjana fail petikan RDB terkini melalui bgsave Semasa tempoh kegigihan, induk akan terus menerima permintaan pelanggan, dan ia akan menyimpan permintaan ini yang mungkin mengubah suai. set data dalam ingatan. Apabila kegigihan selesai, tuan akan menghantar set data fail RDB kepada hamba, dan hamba akan mengekalkan data yang diterima untuk menjana RDB, dan kemudian memuatkannya ke dalam memori. Kemudian, tuan menghantar arahan yang dicache sebelum ini dalam ingatan kepada hamba. Apabila sambungan antara tuan dan hamba diputuskan atas sebab tertentu, hamba boleh menyambung semula secara automatik kepada tuan Jika tuan menerima berbilang permintaan sambungan serentak hamba, ia hanya akan berterusan sekali, bukan sekali untuk setiap sambungan, dan kemudian hantar. data berterusan ini kepada berbilang hamba yang disambungkan secara serentak.

Salinan separa salinan tuan-hamba

Ketahui lebih lanjut tentang replikasi tuan-hamba dalam Redis

Proses umum adalah serupa dengan salinan penuh, jadi saya tidak akan menerangkannya secara terperinci

Penerangan ringkas

Apabila tuan dan hamba diputuskan dan disambungkan semula, keseluruhan data secara amnya akan disalin. Walau bagaimanapun, bermula dari redis versi 2.8, redis menggunakan arahan PSYNC yang boleh menyokong replikasi data separa untuk menyegerakkan data dengan induk Hamba dan induk hanya boleh melakukan replikasi data separa (transmisi disambung semula) selepas sambungan rangkaian diputuskan dan disambungkan semula. Master akan membuat baris gilir cache untuk menyalin data dalam ingatannya untuk cache data untuk tempoh terkini Master dan semua hambanya mengekalkan offset data yang disalin dan id proses induk, apabila sambungan rangkaian diputuskan. Selepas itu, hamba akan meminta tuan untuk meneruskan replikasi yang belum selesai, bermula dari indeks data yang direkodkan. Jika ID proses induk berubah, atau pengimbangan data nod hamba terlalu lama dan tidak lagi berada dalam baris gilir cache induk, maka salinan data penuh akan dilakukan. Replikasi tuan-hamba (replikasi separa, resume titik putus) carta alir:

Penyegerakan tambahan replikasi tuan-hamba

  • Penyegerakan tambahan Redis Ia terutamanya merujuk kepada proses menyegerakkan operasi tulis Master kepada Slave apabila Slave melengkapkan permulaan dan mula berfungsi seperti biasa.

  • Biasanya, setiap kali Guru melaksanakan arahan tulis, ia akan menghantar arahan tulis yang sama kepada Hamba, dan kemudian Hamba akan menerima dan melaksanakannya.

Pengesan degupan jantung replikasi tuan-hamba

1. Kesan status sambungan tuan-hamba

Kesan status sambungan rangkaian pelayan induk dan hamba Dengan menghantar arahan replikasi INFO ke pelayan induk, anda boleh menyenaraikan pelayan hamba Anda boleh melihat berapa saat telah berlalu sejak arahan terakhir dihantar kepada induk . Nilai lag harus melompat antara 0 atau 1. Jika melebihi 1, ini bermakna sambungan antara tuan dan hamba adalah rosak.

2. Pelaksanaan tambahan hamba-min

Redis boleh dikonfigurasikan untuk menghalang pelayan utama daripada melaksanakan perintah tulis min-hamba-untuk-tulis 3 ( min -replicas-to-write 3) min-slaves-max-lag 10 (min-replicas-max-lag 10) Konfigurasi di atas bermaksud: bilangan pelayan hamba adalah kurang daripada 3, atau kelewatan tiga pelayan hamba (lag ) nilai lebih besar daripada atau sama dengan 10 saat, pelayan induk akan menolak untuk melaksanakan arahan tulis. Nilai kelewatan di sini ialah nilai lag perintah INForeplication di atas.

3. Kesan kehilangan arahan

Jika arahan tulis yang dihantar dari pelayan induk ke pelayan hamba hilang separuh jalan akibat kegagalan rangkaian, maka apabila pelayan hamba menghantar REPLCONF ke pelayan induk Apabila melaksanakan arahan ACK, pelayan induk akan mendapati bahawa pengimbangan replikasi semasa pelayan hamba adalah kurang daripada pengimbangan replikasinya sendiri Kemudian pelayan induk akan mencari data pelayan hamba yang hilang dalam replikasi penimbal tunggakan berdasarkan offset replikasi yang dihantar oleh data pelayan hamba dan menghantar semula data ke pelayan hamba. (Keluaran semula) Rangkaian disegerakkan secara berterusan secara berperingkat: rangkaian diputuskan sambungan dan apabila disambungkan semula

Cara menilai sama ada salinan penuh atau salinan separa

Ketahui lebih lanjut tentang replikasi tuan-hamba dalam Redis

Selepas klien menghantar saveof, nod induk akan menilai sama ada ia adalah salinan pertama , dan jika ya, teruskan Salinan penuh, jika offset runid tidak digunakan untuk menentukan sama ada ia konsisten, jika konsisten, salinan separa akan dilakukan, jika tidak, salinan penuh akan dilakukan.

Untuk lebih banyak pengetahuan berkaitan pengaturcaraan, sila lawati: Video Pengaturcaraan! !

Atas ialah kandungan terperinci Ketahui lebih lanjut tentang replikasi tuan-hamba dalam Redis. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

<🎜>: Bubble Gum Simulator Infinity - Cara Mendapatkan dan Menggunakan Kekunci Diraja
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers of the Witch Tree - Cara Membuka Kunci Cangkuk Bergelut
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Sistem Fusion, dijelaskan
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial Java
1668
14
Tutorial PHP
1273
29
Tutorial C#
1256
24
Cara Membina Mod Kluster Redis Cara Membina Mod Kluster Redis Apr 10, 2025 pm 10:15 PM

Mod Redis cluster menyebarkan contoh Redis ke pelbagai pelayan melalui sharding, meningkatkan skalabilitas dan ketersediaan. Langkah -langkah pembinaan adalah seperti berikut: Buat contoh Redis ganjil dengan pelabuhan yang berbeza; Buat 3 contoh sentinel, memantau contoh redis dan failover; Konfigurasi fail konfigurasi sentinel, tambahkan pemantauan maklumat contoh dan tetapan failover; Konfigurasi fail konfigurasi contoh Redis, aktifkan mod kluster dan tentukan laluan fail maklumat kluster; Buat fail nodes.conf, yang mengandungi maklumat setiap contoh Redis; Mulakan kluster, laksanakan perintah Buat untuk membuat kluster dan tentukan bilangan replika; Log masuk ke kluster untuk melaksanakan perintah maklumat kluster untuk mengesahkan status kluster; buat

Cara membersihkan data redis Cara membersihkan data redis Apr 10, 2025 pm 10:06 PM

Cara Mengosongkan Data Redis: Gunakan perintah Flushall untuk membersihkan semua nilai utama. Gunakan perintah flushdb untuk membersihkan nilai utama pangkalan data yang dipilih sekarang. Gunakan Pilih untuk menukar pangkalan data, dan kemudian gunakan FlushDB untuk membersihkan pelbagai pangkalan data. Gunakan perintah DEL untuk memadam kunci tertentu. Gunakan alat REDIS-CLI untuk membersihkan data.

Cara Membaca Gilir Redis Cara Membaca Gilir Redis Apr 10, 2025 pm 10:12 PM

Untuk membaca giliran dari Redis, anda perlu mendapatkan nama giliran, membaca unsur -unsur menggunakan arahan LPOP, dan memproses barisan kosong. Langkah-langkah khusus adalah seperti berikut: Dapatkan nama giliran: Namakannya dengan awalan "giliran:" seperti "giliran: my-queue". Gunakan arahan LPOP: Keluarkan elemen dari kepala barisan dan kembalikan nilainya, seperti LPOP Queue: My-Queue. Memproses Baris kosong: Jika barisan kosong, LPOP mengembalikan nihil, dan anda boleh menyemak sama ada barisan wujud sebelum membaca elemen.

Cara Mengkonfigurasi Masa Pelaksanaan Skrip Lua di Centos Redis Cara Mengkonfigurasi Masa Pelaksanaan Skrip Lua di Centos Redis Apr 14, 2025 pm 02:12 PM

Pada sistem CentOS, anda boleh mengehadkan masa pelaksanaan skrip LUA dengan mengubah fail konfigurasi REDIS atau menggunakan arahan REDIS untuk mengelakkan skrip jahat daripada memakan terlalu banyak sumber. Kaedah 1: Ubah suai fail konfigurasi Redis dan cari fail konfigurasi Redis: Fail konfigurasi Redis biasanya terletak di /etc/redis/redis.conf. Edit Fail Konfigurasi: Buka fail konfigurasi menggunakan editor teks (seperti Vi atau nano): sudovi/etc/redis/redis.conf Tetapkan had masa pelaksanaan skrip lua: Tambah atau ubah suai baris berikut dalam fail konfigurasi untuk menetapkan masa pelaksanaan maksimum skrip lua (unit: milidor)

Cara menggunakan baris arahan redis Cara menggunakan baris arahan redis Apr 10, 2025 pm 10:18 PM

Gunakan alat baris perintah redis (redis-cli) untuk mengurus dan mengendalikan redis melalui langkah-langkah berikut: Sambungkan ke pelayan, tentukan alamat dan port. Hantar arahan ke pelayan menggunakan nama arahan dan parameter. Gunakan arahan bantuan untuk melihat maklumat bantuan untuk arahan tertentu. Gunakan perintah berhenti untuk keluar dari alat baris arahan.

Cara Melaksanakan Kaunter Redis Cara Melaksanakan Kaunter Redis Apr 10, 2025 pm 10:21 PM

Kaunter Redis adalah satu mekanisme yang menggunakan penyimpanan pasangan nilai utama REDIS untuk melaksanakan operasi pengiraan, termasuk langkah-langkah berikut: mewujudkan kekunci kaunter, meningkatkan tuduhan, mengurangkan tuduhan, menetapkan semula, dan mendapatkan tuduhan. Kelebihan kaunter Redis termasuk kelajuan cepat, konkurensi tinggi, ketahanan dan kesederhanaan dan kemudahan penggunaan. Ia boleh digunakan dalam senario seperti pengiraan akses pengguna, penjejakan metrik masa nyata, skor permainan dan kedudukan, dan pengiraan pemprosesan pesanan.

Cara Menetapkan Dasar Tamat Redis Cara Menetapkan Dasar Tamat Redis Apr 10, 2025 pm 10:03 PM

Terdapat dua jenis strategi tamat tempoh data REDIS: Penghapusan berkala: Imbasan berkala untuk memadamkan kunci yang telah tamat tempoh, yang boleh ditetapkan melalui parameter-cap-cap-rempah yang telah tamat tempoh dan parameter kelewatan-cap-remove-time-time. Penghapusan Lazy: Periksa kekunci yang telah tamat tempoh hanya apabila kunci dibaca atau ditulis. Mereka boleh ditetapkan melalui parameter lazon-lazy-expire-expire-expire, lazy-lazy-user-del parameter.

Cara Mengoptimumkan Prestasi Debian Readdir Cara Mengoptimumkan Prestasi Debian Readdir Apr 13, 2025 am 08:48 AM

Dalam sistem Debian, panggilan sistem Readdir digunakan untuk membaca kandungan direktori. Jika prestasinya tidak baik, cuba strategi pengoptimuman berikut: Memudahkan bilangan fail direktori: Split direktori besar ke dalam pelbagai direktori kecil sebanyak mungkin, mengurangkan bilangan item yang diproses setiap panggilan readdir. Dayakan Caching Kandungan Direktori: Bina mekanisme cache, kemas kini cache secara teratur atau apabila kandungan direktori berubah, dan mengurangkan panggilan kerap ke Readdir. Cafh memori (seperti memcached atau redis) atau cache tempatan (seperti fail atau pangkalan data) boleh dipertimbangkan. Mengamalkan struktur data yang cekap: Sekiranya anda melaksanakan traversal direktori sendiri, pilih struktur data yang lebih cekap (seperti jadual hash dan bukannya carian linear) untuk menyimpan dan mengakses maklumat direktori

See all articles