Rumah  >  Artikel  >  pangkalan data  >  Apakah kaedah kegigihan Redis?

Apakah kaedah kegigihan Redis?

WBOY
WBOYke hadapan
2023-05-27 08:02:592728semak imbas

Mengapa kegigihan diperlukan?

Biasanya semua data redis disimpan dalam memori Setelah pangkalan data gagal dan dimulakan semula, semua data akan hilang, walaupun dalam kelompok redis atau redis The pemulihan data penyegerakan tuan-hamba dalam mod sentinel masih mengambil sedikit masa.

Apakah kaedah kegigihan Redis?

Fungsi kegigihan secara berkesan boleh mengelakkan kehilangan data yang disebabkan oleh proses keluar Data boleh dipulihkan dengan menggunakan fail yang disimpan sebelum ini pada mulakan semula seterusnya.

Selepas menggunakan kegigihan Redis, data akan disimpan pada cakera. Apabila melakukan penyegerakan tambahan pangkalan data, masa yang diperlukan adalah lebih kurang daripada melakukan penyegerakan penuh. Pemulihan data daripada kegagalan memainkan peranan yang sangat penting dalam persekitaran pengeluaran

Terdapat dua pilihan untuk kegigihan data Redis

Terdapat dua pilihan untuk kegigihan Redis:

  • RDB ialah storan data syot kilat, yang menyimpan semua data Redis secara berkala pada masa semasa ke cakera.

  • AOF ialah kaedah storan berasaskan tambahan yang merekodkan operasi tulis Redis ke cakera dalam masa nyata.

Apakah perbezaan antara kedua-dua penyelesaian ini? >Apabila penulisan Redis mencetuskan keadaan kegigihan RDB (ia juga boleh dicetuskan dengan melaksanakan perintah dgsave secara manual), proses utama Redis menghentikan proses anak untuk mencipta fail storan RDB sementara Selepas penciptaan fail selesai, nama fail sementara menggantikan fail RDB asal. Fail RDB adalah fail tunggal yang sangat sesuai untuk sandaran pemulihan bencana dan pemulihan data Memulihkan pangkalan data melalui fail RDB Biasanya, ia hanya mengambil masa kira-kira 20 saat untuk memuatkan fail snapshot 1G ke dalam memori.

Kelemahan:

Apakah kaedah kegigihan Redis?Kegigihan RDB hanya akan menyimpan data Redis secara berkala, apabila storan seterusnya belum dicetuskan lagi Jika Redis ranap , semua data dalam ingatan akan hilang.

    Selain itu, apabila jumlah data adalah besar, operasi forking proses anak menggunakan banyak CPU Seperti yang ditunjukkan dalam carta pemantauan di bawah, kegigihan RDB dicetuskan setiap 1800-an akan menggunakan banyak CPU untuk Redis. Sekatan kedua lama mungkin berlaku semasa proses anak garpu.
  • Parameter:

Apakah kaedah kegigihan Redis?

pilihan simpan Jika dikonfigurasikan sebagai simpan kosong "", ia akan kegigihan RDB tertutup Anda boleh mengkonfigurasi berbilang syarat pencetus untuk menghidupkan kegigihan RDB Contohnya, 1 tulis mencetuskan syot kilat dalam masa 900 saat/10 menulis mencetuskan syot kilat dalam masa 300 saat Ini boleh dikonfigurasikan secara bebas mengikut keadaan penulisan Redis anda sendiri . Imbangkan prestasi dengan keselamatan data.

Adalah disyorkan untuk mendayakan stop-writes-on-bgsave-error Apabila ralat redis bgsave berlaku, permintaan pelanggan akan ditolak biasanya disebabkan oleh cakera atau ruang memori yang tidak mencukupi, dan pemantauan diperlukan untuk meningkatkan keselamatan data.

Apakah kaedah kegigihan Redis?

2. Kegigihan AOF

AOF mencapai kegigihan dengan menyimpan perintah untuk operasi tulis Redis Menggunakan AOF untuk kegigihan, keselamatan data Redis akan dipertingkatkan dengan baik. sehingga 1 saat kehilangan data sekiranya berlaku masa henti yang tidak normal. Operasi tulis Redis direkodkan dalam fail AOF Format fail adalah jelas dan mudah difahami serta boleh diubah suai dengan mudah, sekali gus memudahkan pembinaan semula data.

Kelemahan:

Apakah kaedah kegigihan Redis?Apabila penulisan redis meningkat, fail storan AOF akan menjadi lebih besar dan lebih besar, yang akan menjejaskan Data pangkalan data masa pemulihan dan ruang cakera, dsb., jadi kita perlu mengkonfigurasi penulisan semula AOF untuk mengurangkan saiz fail AOF Di sini kita boleh menggunakan dua konfigurasi keadaan pencetus lalai atau kita boleh memanggil arahan BGREWRITEAOF secara manual untuk mencetus.

    Parameter:
lampiran menetapkan sama ada untuk mendayakan kegigihan AOF.

Appendfsync mempunyai tiga mod kegigihan: always/everysec/no Dengan mengambil kira kelajuan dan keselamatan storan data, konfigurasikannya ke everysec dan segerakkan data ke cakera setiap saat.

Apakah kaedah kegigihan Redis?

3. Perbandingan kebaikan dan keburukan RDB dan AOF persistence

Kedua-dua kaedah mempunyai kelebihan dan kelemahan tersendiri Mari kita bandingkan kedua-dua kaedah kegigihan data redis:

4 Pilih

Apakah kaedah kegigihan Redis? Apabila memulihkan data, Redis akan menyemak sama ada fail AOF wujud, dan jika ia tidak wujud, cuba muatkan fail RDB.

Dalam keadaan yang berbeza, bergantung pada jumlah data, keperluan aplikasi untuk keselamatan data, kekangan belanjawan, dsb., pelbagai strategi kegigihan akan digunakan dalam persekitaran pengeluaran sebenar. Ayat ini boleh ditulis semula sebagai: Anda boleh memilih untuk tidak menggunakan kegigihan, atau anda boleh memilih untuk menggunakan kegigihan RDB atau AOF yang berasingan, atau anda boleh mendayakan kegigihan RDB dan AOF pada masa yang sama.

PS: Pilihan ketekunan mesti dipertimbangkan bersama dengan strategi tuan-hamba Redis, kerana replikasi dan ketekunan tuan-hamba juga mempunyai fungsi sandaran data, dan tuan rumah dan hamba hamba boleh memilih penyelesaian kegigihan secara bebas .

Atas ialah kandungan terperinci Apakah kaedah kegigihan Redis?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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