Rumah >pangkalan data >Redis >Mari kita bincangkan tentang potensi titik sekatan AOF dalam Redis (ringkasan)
Apakah titik sekatan yang berpotensi AOF? Artikel berikut meringkaskan beberapa titik sekatan yang berpotensi untuk AOF dalam Redis. Saya harap ia akan membantu anda!
1 Apabila Redis menggunakan sub-proses garpu untuk menulis semula AOF fail, terdapat potensi risiko Menyekat
proses anak garpu, garpu pasti akan menyekat benang utama pada masa ini (perhatikan bahawa garpu akan bukan satu kali Salin semua data memori ke proses anak), garpu menggunakan mekanisme Salin Pada Tulis yang disediakan oleh sistem pengendalian, untuk mengelakkan masalah sekatan jangka panjang yang disebabkan oleh menyalin sejumlah besar memori data sekali gus kepada proses anak . [Cadangan berkaitan: Tutorial video Redis]
Tetapi proses anak fork perlu menyalin struktur data yang diperlukan bagi proses tersebut, salah satunya ialah menyalin jadual halaman memori (memori maya dan jadual indeks pemetaan memori fizikal), proses penyalinan ini akan menggunakan banyak sumber CPU Keseluruhan proses akan disekat sebelum salinan selesai bergantung pada saiz memori keseluruhan contoh > Lebih besar contoh, lebih besar jadual halaman memori Lebih lama garpu disekat.
Selepas salinan jadual halaman memori selesai, proses anak dan proses induk menghala ke ruang alamat memori yang sama, walaupun proses anak dijana pada masa ini, ia tidak memohon saiz memori yang sama dengan proses induk. Jadi bilakah memori proses ibu bapa dan anak akan benar-benar dipisahkan?Seperti namanya, "salinan realistik" bermaksud data sebenar dalam ingatan sebenarnya disalin apabila penulisan berlaku Semasa proses ini, proses induk juga mungkin berisiko disekat, iaitu senario yang diterangkan di bawah.
mekanisme halaman memori besar (Halaman Besar, saiz halaman 2M), maka kebarangkalian untuk menyekat apabila proses induk menggunakan memori akan menjadi sangat besar. meningkat, jadi dalam mesin Redis Mekanisme Halaman Besar perlu dimatikan. Setiap kali Redis bercabang untuk menjana penulisan semula RDB atau AOF selesai, anda boleh melihat dalam log Redis berapa banyak ruang memori yang telah digunakan semula oleh proses induk.
Video Pengaturcaraan! !
Atas ialah kandungan terperinci Mari kita bincangkan tentang potensi titik sekatan AOF dalam Redis (ringkasan). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!