Rumah  >  Artikel  >  pangkalan data  >  Ringkasan dan perkongsian tiga mod kelompok Redis

Ringkasan dan perkongsian tiga mod kelompok Redis

WBOY
WBOYke hadapan
2022-08-31 17:54:381939semak imbas

Pembelajaran yang disyorkan: Tutorial video Redis

Tiga mod kelompok

  • Redis mempunyai tiga mod kelompok , yang mana tuan-hamba adalah mod yang paling biasa.
  • Mod Sentinel telah berkembang untuk mengimbangi kerumitan pertukaran tuan-hamba selepas hos dalam gugusan replikasi tuan-hamba menurun. Seperti namanya, Sentinel digunakan untuk pemantauan fungsi utamanya adalah untuk memantau kluster induk-hamba, bertukar secara automatik antara master dan slave, dan melengkapkan failover kluster.
  • Mod kluster ialah mod kluster yang disediakan secara rasmi oleh redis Ia menggunakan teknologi Sharding untuk bukan sahaja mencapai ketersediaan tinggi, pemisahan baca dan tulis, tetapi juga mencapai storan teragih sebenar.

1. Replikasi tuan-hamba

redis tuan-hamba replikasi

1 >

2. Prinsip replikasi Redis

Replikasi Redis terbahagi kepada dua bahagian: penyegerakan operasi (SYNC) dan penyebaran perintah (propagasi perintah)

Penyegerakan (SYNC) digunakan untuk mengemas kini status pelayan hamba agar konsisten dengan pelayan induk. Penjelasan vernakular adalah untuk mendapatkan data pelayan utama secara aktif daripada pelayan. Pastikan data anda konsisten. Pelaksanaan khusus ialah selepas menerima arahan SYNC, pelayan induk menjana fail snapshot RDB dan kemudian menghantarnya ke pelayan hamba.

    Penyebaran perintah digunakan untuk penyebaran perintah untuk memastikan pelayan hamba konsisten dengan keadaan pelayan induk selepas data pelayan induk diubah suai dan induk dan hamba tidak konsisten. Penjelasan vernakular ialah selepas pelayan induk menerima arahan pengubahsuaian data pelanggan, data pangkalan data berubah, dan perintah itu dicache, dan kemudian arahan cache dihantar ke pelayan hamba mencapai konsistensi data induk-hamba dengan memuatkan arahan cache. Ini dipanggil penyebaran arahan.
  • Mengapa terdapat dua jenis operasi replikasi, penyegerakan dan penyebaran arahan: Apabila terdapat hanya operasi penyegerakan, apabila pelayan hamba menghantar arahan SYNC ke pelayan induk, pelayan induk masih akan menerimanya apabila menjana Fail syot kilat RDB Perintah klien mengubah status data Jika bahagian data ini tidak dapat disampaikan kepada pelayan hamba, maka data induk-hamba akan menjadi tidak konsisten. Pada masa ini, penyebaran arahan berlaku Selepas pelayan induk menerima arahan SYNC daripada pelayan hamba, ia menjana fail petikan RDB dan menyimpan cache arahan yang diterima dalam tempoh ini, dan kemudian menggunakan operasi penyebaran perintah untuk menghantarnya ke pelayan hamba. . Untuk mencapai konsistensi data tuan-hamba.
  • 3. Prinsip replikasi tuan-hamba Redis

Dua operasi replikasi redis diperkenalkan di atas, dan replikasi tuan-hamba redis secara rasmi berdasarkan penyegerakan dan penyebaran Perintah dicapai. Dua gambar berikut menunjukkan proses replikasi redis:

4.Kebaikan dan keburukan redis tuan-hamba

Kelebihan:

1. Menyedari pemisahan baca-tulis, meningkatkan ketersediaan dan menyelesaikan kegagalan mesin tunggal 2. Semasa replikasi tuan-hamba, kedua-dua tuan dan hamba tidak menyekat dan masih ada.

Kelemahan:

1 Semasa masa henti utama, hos perlu ditukar secara manual Pada masa yang sama, sesetengah data tidak boleh disegerakkan dengan pelayan hamba dalam masa, mengakibatkan ketidakkonsistenan data. (campur tangan manual diperlukan)

2 Selepas hamba turun dan berbilang hamba dipulihkan, sejumlah besar penyegerakan SYNC akan menyebabkan tekanan IO induk berganda (masa permulaan boleh dielakkan secara manual)

3. Pengembangan dalam talian adalah rumit.

Ringkasan:

Kelebihan replikasi tuan-hamba redis terutamanya meningkatkan ketersediaan dan keburukan

2 Mod Sentinel

Pengenalan Sentinel Sentinel<.>

Sentinel pada asasnya ialah contoh Redis yang dijalankan dalam mod khas, tetapi proses dan kerja permulaan adalah berbeza daripada Redis biasa, dan ia pada asasnya adalah proses yang berasingan.

Sentinel ialah penyelesaian ketersediaan tinggi untuk Redis: sistem Sentinel yang terdiri daripada satu atau lebih tika Sentinel boleh memantau sebarang bilangan pelayan induk dan semua pelayan hamba di bawah pelayan induk ini, dan boleh bertukar secara automatik daripada hamba pelayan ke pelayan induk apabila pelayan induk ke luar talian.

1. Sistem Sentinel

Rajah berikut ialah gambar rajah seni bina sistem Sentinel yang mudah Sebuah sistem Sentinel memantau gugusan induk-hamba, di mana pelayan1 ialah pelayan induk Redis dan server2 /3/4 ialah pelayan hamba Redis. Replikasi tuan-hamba di atas digunakan antara tuan dan hamba untuk mencapai konsistensi tuan-hamba. Sistem Sentinel memantau keseluruhan kluster tuan-hamba.

2. Failover Sentinel

Apabila sistem Sentinel mengesan bahawa pelayan utama Server1 berada di luar talian, ia akan menamatkan pelayan2/ 3/4 salinan.

Pada masa yang sama, Sentinel meningkatkan pelayan2 kepada pelayan utama dan server3/4 mereplikasi daripada pelayan utama baharu. Pada masa yang sama, tunggu pelayan1 datang dalam talian semula.

Sistem Sentinel juga boleh secara aktif menurunkan taraf perkhidmatan utama kepada pelayan hamba dan menaik taraf pelayan hamba kepada pelayan induk.

2.1. Proses pemantauan Sentinel

Proses kelompok pemantauan sentinel:

  • Arahan Sentinel untuk mengembalikan pelayan redis kepada keadaan berjalan dengan menghantar arahan. Terbitkan dan langgan Apabila status pelayan induk berubah, Sentinel memberitahu pelayan hamba lain melalui mod
  • terbit dan langgan.

2.2. Sentinel failover

Sentinel failover:

  • 1 Perintah PING ke gugusan setiap 1 saat
  • 2. Jika masa membalas tika dalam gugusan ke tika Sentinel melebihi turun-selepas milisaat, maka tika ini akan menghantar perintah PING ialah secara subjektif turun Dalam talian
  • 3. Bilakah ia akan berada di luar talian secara objektif? Kejadian lain dalam sistem Sentinel perlu mengesahkan bahawa penyelia tika dalam kelompok berada di luar talian.
  • Jika pelayan induk ditandakan sebagai luar talian subjektif, proses Sentinel memantau induk dalam sistem Sentinel perlu mengesahkan sama ada induk telah memasuki keadaan luar talian penyelia sekali sesaat
  • 4 Jika terdapat kejadian Sentinel yang mencukupi (bergantung pada konfigurasi) untuk mengesahkan bahawa Guru telah memasuki keadaan luar talian penyeliaan, Guru akan ditandakan sebagai luar talian secara objektif.

3. Kelebihan dan kekurangan Sentinel

Kelebihan:

1. Mod Sentinel adalah berdasarkan replikasi tuan-hamba, jadi Sentinel mempunyai semua kelebihan replikasi tuan-hamba 2. Sentinel mempunyai pensuisan dan failover tuan-hamba, jadi kluster mempunyai ketersediaan yang lebih tinggi

Kelemahan: <.>

1 Redis sukar untuk menyokong pengembangan dalam talian, dan pengembangan dalam talian adalah lebih rumit.

Ringkasan:

Sentinel digunakan terutamanya untuk memantau kelompok tuan-hamba redis dan meningkatkan ketersediaan kelompok tuan-hamba redis.

3. Mod Kluster

Kluster redis

1. Sharding Technology, redis versi 3.0 tersedia secara rasmi. Sentinel pada asasnya telah mencapai ketersediaan yang tinggi, tetapi setiap mesin menyimpan kandungan yang sama, yang membazir memori, jadi Redis Cluster melaksanakan storan teragih. Kandungan yang berbeza disimpan pada setiap nod mesin.


2. Prinsip pemecahan data Kluster Redis

perkongsian data redis menggunakan slot cincang, kluster redis Terdapat 16384 cincang Setiap kekunci disemak modulo 16384 selepas lulus semakan CRC16 untuk menentukan slot yang hendak diletakkan. Apabila mengakses kunci redis, redis akan mendapat hasil berdasarkan algoritma CRC16, dan kemudian mengira baki hasil dan 16384, dan menggunakan nilai ini untuk mendapatkan data daripada nod yang sepadan. Pada masa ini, klien aplikasi sebenarnya hanya perlu menyambung kepada mana-mana satu nod, dan kemudian setiap nod dalam Kluster Redis menyimpan maklumat slot nod lain. Dengan cara ini, selepas kunci akses mengira slot, maklumat nod diperoleh daripada konfigurasi dengan menyimpan maklumat slot, dan kemudian nod yang sepadan diambil untuk mendapatkan data.

3. Prinsip replikasi Kelompok Redis

kelompok redis-kluster memperkenalkan model replikasi induk-hamba sepadan dengan satu atau lebih nod hamba. Apabila nod induk Apabila nod turun, nod hamba akan didayakan. Apabila nod induk lain melakukan ping ke nod induk A, jika lebih separuh daripada nod induk berkomunikasi dengan A tamat masa, maka nod induk A dianggap turun. Jika kedua-dua nod induk A dan nod hamba A1nya turun, kluster tidak lagi boleh menyediakan perkhidmatan Pembelajaran yang disyorkan:
Tutorial video Redis

Atas ialah kandungan terperinci Ringkasan dan perkongsian tiga mod kelompok Redis. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:jb51.net. Jika ada pelanggaran, sila hubungi admin@php.cn Padam