Rumah > Artikel > pangkalan data > Mari analisa teknologi seni bina ketersediaan tinggi MySQL bersama-sama
Artikel ini membawakan anda pengetahuan yang berkaitan tentang analisis teknikal mysql seni bina ketersediaan sederhana dan tinggi Ia terutamanya memperkenalkan analisis teknikal MMM, seni bina master-hamba MySQL dan isu berkaitan Kluster membantu Semua orang membantu.
Dengan perkembangan teknologi maklumat, perusahaan semakin bergantung pada pengurusan maklumat, dan maklumat data setiap aplikasi perniagaan disimpan terutamanya dalam In pangkalan data, perusahaan mempunyai keperluan yang semakin tinggi untuk kesinambungan akses kepada data ini Untuk mengelakkan pelbagai kerugian yang disebabkan oleh gangguan data, ketersediaan pangkalan data yang tinggi telah menjadi keutamaan dalam pembinaan maklumat perusahaan. Pada masa yang sama, perniagaan utama dalam industri atau bidang yang berkaitan dengan ekonomi negara dan mata pencarian rakyat, seperti telekomunikasi, kewangan, tenaga, dan industri ketenteraan, memerlukan ketersediaan yang tinggi untuk penyimpanan data utama Sistem data mesti dijamin berfungsi 24/. 7 untuk mengelakkan kehilangan data dan kerosakan data. Klik untuk mendapatkan bahan pembelajaran pengaturcaraan
Seni bina ketersediaan tinggiIa pada asasnya adalah standard untuk perkhidmatan aplikasi dan perkhidmatan pangkalan data untuk menjadi berkualiti tinggi. Untuk sistem, mungkin termasuk banyak modul, seperti aplikasi bahagian hadapan, cache, pangkalan data, carian, baris gilir mesej, dll. Setiap modul perlu tersedia untuk memastikan ketersediaan tinggi keseluruhan sistem . Untuk perkhidmatan pangkalan data, ketersediaan tinggi mungkin lebih kompleks Ketersediaan perkhidmatan kepada pengguna memerlukan bukan sahaja akses, tetapi juga jaminan ketepatan Oleh itu, ketersediaan pangkalan data yang tinggi memerlukan lebih banyak pengesahan.
Klasifikasi Seni Bina Ketersediaan Tinggi MySQL
MMM (Pengurus replikasi Master-Master untuk MySQL) ialah satu set program skrip A yang menyokong failover dwi-master dan pengurusan harian dwi-master.
MMM dibangunkan menggunakan bahasa Perl dan digunakan terutamanya untuk memantau dan mengurus replikasi Master-Master (dual-master) MySQL Walaupun ia dipanggil replikasi dwi-induk. hanya satu dibenarkan pada masa yang sama dalam perniagaan Tulis kepada satu tuan, dan sediakan perkhidmatan baca separa pada tuan ganti yang lain untuk mempercepatkan pemanasan tuan ganti pada saat pertukaran tuan-tuan
Di satu pihak, program skrip MMM melaksanakan fungsi failover Sebaliknya, skrip alat dalaman tambahannya juga boleh mencapai pengimbangan beban baca berbilang hamba.
Analisis komponen asas MMM
Prinsip pelaksanaan asas MMM
MMM menyediakan cara automatik dan manual untuk mengalih keluar IP maya pelayan dengan kelewatan replikasi yang tinggi dalam sekumpulan pelayan, dan ia juga boleh menyandarkan data dan mencapai penyegerakan data antara dua nod.MySQL sendiri tidak menyediakan penyelesaian failover replikasi pelayan boleh dicapai melalui penyelesaian MMM, dengan itu mencapai ketersediaan tinggi mysql.
Senario penggunaan MMM
Memandangkan MMM tidak dapat menjamin konsistensi data sepenuhnya, MMM sesuai untuk aplikasi yang memerlukan ketekalan data tidak begitu tinggi, tetapi Senario di mana anda ingin memastikan ketersediaan perniagaan sepenuhnya. Bagi perniagaan yang mempunyai keperluan tinggi untuk konsistensi data, adalah sangat tidak disyorkan untuk menggunakan seni bina ketersediaan tinggi seperti MMM.MHA ialah program ketersediaan tinggi MySQL sumber terbuka Apabila MHA memantau kegagalan nod induk, ia akan secara automatik mempromosikan nod hamba dengan data terkini untuk menjadi nod induk baharu.
MHA akan mendapatkan maklumat tambahan daripada nod lain untuk mengelakkan masalah konsistensi, iaitu, MHA akan mendapatkan maklumat data daripada nod hamba lain dan menghantar maklumat ke nod induk A nod hamba yang terdekat, supaya apabila nod induk gagal, nod hamba ini akan dinaikkan ke nod induk, dan nod hamba ini akan mempunyai semua maklumat data nod hamba yang lain.
MHA juga menyediakan fungsi pensuisan dalam talian bagi nod induk, iaitu menukar nod induk/hamba atas permintaan.
Komponen asas MHA
MHA terdiri daripada dua bahagian: Pengurus MHA (nod pengurusan) dan Nod MHA (nod data).
Pengurus MHA boleh digunakan secara berasingan pada mesin bebas untuk mengurus berbilang kluster induk-hamba, atau ia boleh digunakan pada nod hamba.
Prinsip pelaksanaan MHA
Senario Penggunaan MHA
Pada masa ini, MHA terutamanya menyokong seni bina satu tuan, berbilang hamba.
Untuk membina MHA, kluster replikasi mesti mempunyai sekurang-kurangnya tiga pelayan pangkalan data, satu tuan dan dua hamba, iaitu, seorang bertindak sebagai tuan, seorang bertindak sebagai tuan sandaran, dan yang lain bertindak sebagai perpustakaan hamba.
Oleh kerana sekurang-kurangnya tiga pelayan diperlukan dan disebabkan pertimbangan kos mesin, Taobao juga telah mengubah suainya atas dasar ini, Taobao TMHA menyokong satu tuan dan satu hamba.
Dari perspektif kod, MHA ialah satu set skrip Perl Jadi saya percaya bahawa dengan kekuatan teknikal Alibaba, tidak sukar untuk menukar MHA untuk menyokong seorang tuan dan seorang hamba .
Seni bina jenis ini biasanya digunakan oleh syarikat pemula, dan ia juga memudahkan pengembangan seterusnya langkah demi langkah
Ciri-ciri seni bina ini
Teknologi Kluster MySQL menyediakan ciri redundansi untuk MySQL dalam sistem teragih, meningkatkan Keselamatan boleh meningkatkan kebolehpercayaan sistem dan kesahihan data. Kelompok MySQL memerlukan satu set komputer, setiap komputer boleh difahami sebagai nod, dan fungsi nod ini berbeza. Kluster MySQL boleh dibahagikan kepada tiga jenis nod mengikut fungsinya: nod pengurusan, nod data dan nod SQL. Komputer dalam kluster boleh menjadi nod tertentu, atau koleksi dua atau tiga jenis nod ini digabungkan untuk menyediakan pengurusan data Kluster berprestasi tinggi untuk aplikasi
Pada masa ini, jumlah data perusahaan semakin besar dan lebih besar, jadi keperluan untuk MySQL telah ditingkatkan lagi Kebanyakan penyelesaian ketersediaan tinggi sebelumnya biasanya mempunyai kelemahan tertentu, seperti penyelesaian Replikasi MySQL Ia mengambil masa tertentu untuk mengesan sama ada Master masih hidup jika penukaran tuan-hamba diperlukan, Ia juga mengambil masa tertentu, jadi ketersediaan yang tinggi sangat bergantung pada perisian pemantauan dan alat pengurusan automatik. Dengan pembangunan berterusan MySQL Cluster, ia akhirnya telah bertambah baik dalam prestasi dan ketersediaan tinggi
Konsep asas MySQL Cluster
MySQL Cluster hanyalah teknologi gugusan MySQL , terdiri daripada sebuah kumpulan komputer. Setiap komputer boleh menyimpan satu atau lebih nod, termasuk pelayan MySQL, nod data Kluster DNB, pengurusan nod lain, dan program capaian data khusus ini digabungkan untuk menyediakan Pengurusan data Kluster yang bertambah baik dengan prestasi tinggi, tinggi ketersediaan dan kebolehskalaan
Proses akses Kluster MySQL secara kasarnya seperti ini Aplikasi biasanya menggunakan algoritma pengimbangan beban tertentu untuk mengedarkan akses data kepada nod SQL yang berbeza melakukan akses data kepada nod data dan mengembalikan hasil data daripada nod data. Nod pengurusan Ia hanya mengkonfigurasi dan mengurus nod SQL dan nod data
Fahami nod Kluster MySQL
Kluster MySQL boleh dibahagikan kepada tiga jenis nod mengikut jenis nod, iaitu nod pengurusan, SQL nod, Data nod, semua nod ini membentuk sistem kluster MySQL yang lengkap Malah, data disimpan dalam enjin storan pelayan storan NDB, dan struktur jadual disimpan dalam pelayan MySQL Pelayan MySQL dan pengurusan kluster Pelayan menguruskan pelayan storan NDB melalui alat pengurusan ndb_mgmd
[1. Fail config.ini biasanya dikonfigurasikan untuk mengkonfigurasi bilangan salinan yang perlu dikekalkan dalam kelompok, berapa banyak memori yang perlu diperuntukkan untuk data dan indeks pada setiap nod data, alamat IP dan laluan cakera untuk menyimpan data pada setiap nod data;
Nod pengurusan biasanya mengurus fail konfigurasi Kluster dan log Kluster. Setiap nod dalam kluster mendapatkan maklumat konfigurasi daripada pelayan pengurusan dan meminta cara untuk menentukan di mana pelayan pengurusan berada. Jika peristiwa baharu berlaku dalam nod, nod menghantar maklumat jenis acara ini kepada pelayan pengurusan dan menulis maklumat ini ke log Kluster; Secara amnya, sekurang-kurangnya satu nod pengurusan diperlukan dalam MySQL Sistem kluster , ia juga perlu diperhatikan bahawa kerana nod data dan nod SQL perlu membaca maklumat konfigurasi Kluster sebelum memulakan, nod pengurusan biasanya dimulakan dahulu;
Nod SQL hanyalah pelayan mysqld Aplikasi tidak boleh mengakses nod data secara langsung. Ia hanya boleh mengakses nod data melalui nod SQL untuk mengembalikan data. Mana-mana nod SQL disambungkan kepada semua nod storan, jadi apabila mana-mana nod storan gagal, nod SQL boleh memindahkan permintaan ke nod storan lain untuk dilaksanakan. Secara umumnya, lebih banyak nod SQL, lebih baik Lebih banyak nod SQL, lebih kecil beban yang diberikan kepada setiap nod SQL, dan lebih baik prestasi keseluruhan sistem; >Nod data digunakan untuk menyimpan data dalam Kluster MySQL mereplikasi data antara nod data Jika mana-mana nod gagal, akan sentiasa ada nod data lain untuk menyimpan data nod logik boleh diedarkan pada komputer yang berbeza Kluster mempunyai sekurang-kurangnya tiga komputer Untuk memastikan perkhidmatan kluster dapat dikekalkan secara normal, nod pengurusan biasanya diletakkan pada hos yang berasingan.
tutorial video mysqlAtas ialah kandungan terperinci Mari analisa teknologi seni bina ketersediaan tinggi MySQL bersama-sama. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!