Mari analisa mod sentri Redis bersama-sama
Artikel ini membawa anda pengetahuan yang berkaitan tentang Redis Ia terutamanya memperkenalkan isu berkaitan mod sentinel, termasuk konsep sentinel, peranan sentinel, sentinel yang membolehkan, prinsip sentinel, dsb. semoga Bermanfaat kepada semua.
Pembelajaran yang disyorkan: Tutorial Redis
Mod Sentinel
Konsep Sentinel
Dalam struktur master-multi-slave, jika tuan turun, anda perlu memilih satu daripada berbilang hamba sebagai tuan baharu Untuk melengkapkan fungsi sedemikian, anda perlu Menggunakan Redis mekanisme sentinel
-
Sentinel (sentinel) ialah sistem teragih yang digunakan untuk memantau setiap pelayan dalam struktur tuan-hamba, apabila kegagalan berlaku , mekanisme pengundian memilih tuan baharu dan menghubungkan semua hamba kepada tuan baharu, seperti yang ditunjukkan dalam rajah di bawah:
2. Fungsi Sentinel
-
Pemantauan: Pantau tuan dan hamba
- Semak secara berterusan sama ada tuan dan hamba adalah operasi Normal
- Pengesanan kelangsungan hidup induk, pengesanan status operasi induk dan hamba
Pemberitahuan (peringatan): Apabila ada masalah dengan pelayan yang dipantau, hantar pemberitahuan kepada pengawal lain dan pelayan Redis
Failover: Putuskan sambungan tuan dan hamba yang terjatuh, pilih Satu hamba berfungsi sebagai tuan, menghubungkan yang lain hamba kepada tuan baharu, dan memaklumkan pelanggan alamat pelayan baharu
Nota: Sentinel juga merupakan pelayan redis dan hanya menyediakan perkhidmatan Pemantauan tidak menyediakan data perkhidmatan pengurusan; biasanya bilangan sentinel dikonfigurasikan sebagai nombor ganjil (mudah untuk mengundi)
3 Dayakan sentinel
-
Ubah suai Konfigurasi sentinel. fail
sentinel.conf
, fail konfigurasi terletak dalam direktori Redis, seperti yang ditunjukkan dalam rajah di bawah: -
Maksud beberapa konfigurasi adalah seperti yang ditunjukkan dalam rajah di bawah:
-
Mulakan Sentinel
redis-sentinel filename #filename指的是配置文件名 #每个哨兵都要配置自己的配置文件
Salin selepas log masuk Selepas mengkonfigurasi dan memulakan Sentinel, selepas pelayan utama turun, ia akan dilaksanakan secara automatik Pengundian, penukaran tuan-hamba dan proses lain
4 Prinsip Sentinel
Sentinel melalui tiga peringkat semasa proses penukaran tuan-hamba:
- Pemantauan
- Pemberitahuan
- Failover
4.1 Pemantauan
Digunakan untuk menyegerakkan maklumat status setiap nod, termasuk master, slave, sentinel, iaitu maklumat semua pelayan dalam keseluruhan sistem.
Fungsi yang telah dilengkapkan terutamanya:
Dapatkan status setiap sentinel (sama ada dalam talian atau tidak): baru ditambah Pengawal perlu berinteraksi dengan pengawal sedia ada dalam sistem
-
Dapatkan status tuan (melalui arahan maklumat)
-
Dapatkan kandungan Seperti berikut
1. master属性 runid role:master 2. 各个slave在master中保存的基本信息
Salin selepas log masuk
-
-
Dapatkan status semua hamba (hantar arahan info kepada semua hamba berdasarkan maklumat hamba dalam tuan)
-
Kandungan yang diperolehi adalah seperti berikut
slave属性 runid role:slave master_host、master_port offset
Salin selepas log masuk
-
Prinsip kerja dalaman khusus adalah seperti berikut:
- Selepas Sentinel 1 menghantar arahan info kepada induk, ia akan mewujudkan sambungan cmd Sambungan yang dibuat digunakan untuk menghantar arahan
- Selepas sambungan cmd dibuat, keadaan semasa akan menjadi. disimpan di bahagian Sentinel 1 Untuk semua maklumat yang diperolehinya, tuan di hujung yang satu lagi akan menyimpan maklumat yang dipegangnya
- Kemudian Sentinel 1 menghantar arahan info kepada hamba berdasarkan maklumat tentang salve. diperoleh daripada tuan untuk mendapatkan maklumat salve dan memperkayakan maklumat yang disimpan
- Apabila Sentinel 2 baharu ditambah, Sentinel 2 menghantar arahan info kepada tuan untuk mewujudkan sambungan cmd tuan, Sentinel 1 yang sedia ada sebelum ini boleh diperolehi dengan sendirinya Simpan maklumat yang telah anda perolehi. Kemudian tentukan sama ada Sentinel 1 berada dalam talian, dan wujudkan sambungan dengan Sentinel 1. Kedua-duanya bertukar maklumat antara satu sama lain, dan kedua-dua pihak akan terus melakukan ping untuk memastikan terdapat komunikasi yang lancar antara mereka
- Sentinel 2 berdasarkan maklumat hamba diperolehi daripada tuan , dan kemudian dapatkan maklumat daripada hamba untuk memperkayakan maklumat yang disimpannya
- Apabila menambah Sentinel 3, ia adalah serupa dengan proses sebelumnya, dan akhirnya ketiga-tiga Sentinel mewujudkan rangkaian perhubungan
- Rangkaian perhubungan Mereka bertiga akan bertukar dan menghantar maklumat antara satu sama lain Model yang berfungsi dalam rangkaian perhubungan ini dipanggil model publish-subscribe
. 4.2 Pemberitahuan
Semasa fasa pemberitahuan, pengawal mesti terus mendapatkan maklumat tuan dan hamba, dan kemudian berkongsi maklumat yang diperolehi antara pelbagai pengawal.
Proses khusus adalah seperti berikut:
Sentinel menghantar hello
arahan kepada tuan dan hamba melalui sambungan cmd yang telah ditetapkan, mendapatkan maklumat mereka, dan kemudian dalam hubungan Perkongsian rangkaian:
4.3 Failover
Putuskan sambungan tuan yang jatuh daripada hamba, pilih hamba sebagai tuan, dan Hamba lain sambung kepada tuan baharu dan maklumkan alamat pelayan baharu kepada klien.
Proses khusus adalah seperti berikut:
Sentinel 1 tidak pernah menerima maklum balas daripada tuan, dan secara subjektif menilai bahawa tuan itu turun, menandakan
sdown
(Hanya seorang sentinel yang berpendapat bahawa tuannya tidak berfungsi)-
Sentinel 1 menghantar mesej dalam rangkaian perhubungan dan menghantar mesej di penjuru kiri sebelah atas gambar kepada sentinel lain
-
Selepas sentinel lain mendapat mesej, mereka semua menghantar mesej kepada tuan untuk menentukan sama ada tuannya turun. tuan telah turun, mereka akan menukar tanda kepada
odown
(Selepas semua pengesanan sentinel, lebih separuh daripada sentinel percaya bahawa tuan telah turun) -
Apabila ia bertekad bahawa tuan telah turun, tuan baru perlu dipilih pada masa ini, yang sentinel Penyelesaian perkara ini mesti diputuskan melalui pemilihan di kalangan sentinel Proses khusus adalah seperti berikut:
- Semasa pilihan raya, setiap sentinel mempunyai undi, dan setiap sentri akan mengeluarkan arahan Beritahu sentinel lain dalam intranet untuk menjadi pemilih Sebagai contoh, sentinel1 dan sentinel2 mengeluarkan arahan pilihan raya ini, kemudian sentinel3 menerima permohonan mereka mengundi salah satu parti, berdasarkan susunan ketibaan Mengundi mengikut urutan , parti yang mendapat undi akan mempunyai satu lagi undi pilihanraya Mengikut borang ini, akhirnya akan ada keputusan pilihan raya. dan sentinel dengan undian terbanyak akan dipilih
- dalam ini Mungkin terdapat kegagalan semasa proses Contohnya, jika pilihan raya tidak berjaya pada pusingan pertama, maka pusingan kedua dan ketiga akan diteruskan sehingga pilihan raya selesai
-
Apabila pengawal selesai Selepas pilihan raya, pengawal yang memenangi pilihan raya kemudiannya akan memilih satu daripada hamba dan mengubahnya menjadi tuan baru proses adalah seperti berikut:
- Sentinel berada dalam senarai pelayan Prinsip memilih induk alternatif: Kecualikan dahulu, kemudian pilih
- Keluar yang tidak dalam talian
- Keluar yang bertindak balas perlahan
- Keluar yang telah lama terputus sambungan daripada induk asal
- Pengecualian telah tamat dan pemilihan bermula
- Mereka yang mempunyai keutamaan yang lebih tinggi akan dipilih
- Mereka yang mempunyai ofset yang lebih besar akan dipilih (lebih besar bermakna data induk asal paling banyak disegerakkan)
- Jika ia belum dipilih lagi, ia akan dipilih berdasarkan runid
- Sentinel berada dalam senarai pelayan Prinsip memilih induk alternatif: Kecualikan dahulu, kemudian pilih
-
Selepas memilih master baharu, sentri menghantar arahan kepada pelayan:
Kepada tuan baharu Hantar
slaveof no one
perintahkepada hamba lain Hantar
slaveof 新masterIP端口
perintah
dan juga beritahu sentri lain Siapa tuan baru
5 : menyegerakkan maklumat
Fasa pemberitahuan: kekal berhubungPeringkat Failover:
Sentinel mengesan masalah dan menandakan subjektif luar talian dan objektif luar talian dalam urutan
- Pilih pengawal yang bertanggungjawab
- Pilih tuan baharu
- Tuan baharu mengambil alih jawatan, dan hamba lain menyambung kepada tuan baharu
- Selepas tuan asal dipulihkan, ia menyambung kepada tuan baharu sebagai hamba
- Pembelajaran yang disyorkan: Tutorial video Redis
Atas ialah kandungan terperinci Mari analisa mod sentri Redis bersama-sama. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

1. Mulakan menu [Start], masukkan [cmd], klik kanan [Command Prompt], dan pilih Run as [Administrator]. 2. Masukkan arahan berikut mengikut turutan (salin dan tampal dengan teliti): SCconfigwuauservstart=auto, tekan Enter SCconfigbitsstart=auto, tekan Enter SCconfigcryptsvcstart=auto, tekan Enter SCconfigtrustedinstallerstart=auto, tekan Enter SCconfigwuauservtype=share, tekan Enter netstopwuauserv , tekan enter netstopcryptS

Kesesakan fungsi PHP membawa kepada prestasi rendah, yang boleh diselesaikan melalui langkah berikut: cari fungsi kesesakan dan gunakan alat analisis prestasi. Keputusan cache untuk mengurangkan pengiraan semula. Memproses tugas secara selari untuk meningkatkan kecekapan pelaksanaan. Optimumkan penggabungan rentetan, sebaliknya gunakan fungsi terbina dalam. Gunakan fungsi terbina dalam dan bukannya fungsi tersuai.

Strategi caching dalam GolangAPI boleh meningkatkan prestasi dan mengurangkan beban pelayan Strategi yang biasa digunakan ialah: LRU, LFU, FIFO dan TTL. Teknik pengoptimuman termasuk memilih storan cache yang sesuai, caching hierarki, pengurusan ketidaksahihan dan pemantauan dan penalaan. Dalam kes praktikal, cache LRU digunakan untuk mengoptimumkan API untuk mendapatkan maklumat pengguna daripada pangkalan data Data boleh diambil dengan cepat daripada cache Jika tidak, cache boleh dikemas kini selepas mendapatkannya daripada pangkalan data.

Terdapat perbezaan prestasi antara Erlang dan Go. Erlang cemerlang dalam concurrency, manakala Go mempunyai daya pemprosesan yang lebih tinggi dan prestasi rangkaian yang lebih pantas. Erlang sesuai untuk sistem yang memerlukan konkurensi tinggi, manakala Go sesuai untuk sistem yang memerlukan daya pemprosesan tinggi dan kependaman rendah.

Dalam pembangunan PHP, mekanisme caching meningkatkan prestasi dengan menyimpan sementara data yang kerap diakses dalam memori atau cakera, dengan itu mengurangkan bilangan akses pangkalan data. Jenis cache terutamanya termasuk memori, fail dan cache pangkalan data. Caching boleh dilaksanakan dalam PHP menggunakan fungsi terbina dalam atau perpustakaan pihak ketiga, seperti cache_get() dan Memcache. Aplikasi praktikal biasa termasuk caching hasil pertanyaan pangkalan data untuk mengoptimumkan prestasi pertanyaan dan caching halaman output untuk mempercepatkan pemaparan. Mekanisme caching berkesan meningkatkan kelajuan tindak balas laman web, meningkatkan pengalaman pengguna dan mengurangkan beban pelayan.

Menggunakan cache Redis boleh mengoptimumkan prestasi halaman tatasusunan PHP. Ini boleh dicapai melalui langkah berikut: Pasang klien Redis. Sambung ke pelayan Redis. Cipta data cache dan simpan setiap halaman data ke dalam cincangan Redis dengan kunci "halaman:{page_number}". Dapatkan data daripada cache dan elakkan operasi mahal pada tatasusunan besar.

Mula-mula anda perlu menetapkan bahasa sistem kepada paparan Bahasa Cina Mudah dan mulakan semula. Sudah tentu, jika anda telah menukar bahasa paparan kepada Bahasa Cina Ringkas sebelum ini, anda boleh melangkau langkah ini sahaja. Seterusnya, mula mengendalikan pendaftaran, regedit.exe, navigasi terus ke HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlNlsLanguage dalam bar navigasi kiri atau bar alamat atas, dan kemudian ubah suai nilai kunci InstallLanguage dan nilai kunci Lalai kepada 0804 (jika anda ingin menukarnya ke Bahasa Inggeris en- kami, anda perlu Mula-mula tetapkan bahasa paparan sistem kepada en-us, mulakan semula sistem dan kemudian tukar semuanya kepada 0409) Anda mesti memulakan semula sistem pada ketika ini.

Ya, Navicat boleh menyambung ke Redis, yang membolehkan pengguna mengurus kunci, melihat nilai, melaksanakan arahan, memantau aktiviti dan mendiagnosis masalah. Untuk menyambung ke Redis, pilih jenis sambungan "Redis" dalam Navicat dan masukkan butiran pelayan.
