Asas Apache Kafka & Pemprosesan Aliran · Pelajaran

Replikasi dan Toleransi Kegagalan

Pelajari cara Kafka memastikan keselamatan data dan ketersediaan tinggi melalui replikasi topik merentas broker.

Pelajaran 1 daripada 412 langkah

Replikasi dan Toleransi Kegagalan ialah pelajaran Asas Apache Kafka & Pemprosesan Aliran percuma di CoddyKit. Ini ialah pelajaran 1 daripada 4. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Asas Apache Kafka & Pemprosesan Aliran, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Asas Apache Kafka & Pemprosesan Aliran merangkumi sejumlah 4 pelajaran.

Mengapa Keselamatan Data Penting

Bayangkan anda mempunyai data penting. Jika data itu disimpan di satu tempat sahaja dan tempat tersebut gagal, data anda akan hilang!

Dalam sistem teragih seperti Kafka, memastikan data tidak hilang dan sentiasa tersedia amat penting. Di sinilah replikasi berperanan.

Penduaan Data Kafka

Replikasi dalam Kafka bermaksud membuat beberapa salinan data (mesej) dan menyimpannya pada broker Kafka (pelayan) yang berbeza.

Idea mudah ini memberikan dua manfaat besar:

  • Toleransi Ralat: Jika satu broker gagal, salinan tersedia di tempat lain.
  • Ketersediaan Tinggi: Data kekal boleh dicapai walaupun berlaku gangguan.

Penerangan Faktor Replikasi

Faktor replikasi menentukan bilangan salinan setiap partition yang akan dikekalkan oleh Kafka merentas kelompok anda.

  • Faktor replikasi 1 bermaksud hanya satu salinan (tiada toleransi ralat).
  • Faktor 3 (contohnya, 3 salinan) lazim digunakan untuk persekitaran pengeluaran.

Setiap salinan dipanggil replika.

Pemimpin dan Pengikut

Untuk setiap partition, satu replika ditetapkan sebagai pemimpin. Replika yang lain ialah pengikut.

  • Pemimpin mengendalikan semua permintaan baca dan tulis untuk partition tersebut.
  • Pengikut mereplikasi data daripada pemimpin secara pasif untuk kekal disegerakkan.

Reka bentuk ini memudahkan interaksi klien kerana klien hanya berkomunikasi dengan pemimpin.

Kumpulan Selaras (ISR)

Kafka menjejaki pengikut yang telah mengejar pemimpin sepenuhnya. Kumpulan ini dipanggil set In-Sync Replica (ISR).

Set ISR merangkumi pemimpin dan semua pengikut yang telah mereplikasi semua mesej daripada pemimpin serta tidak terlalu ketinggalan.

Hal ini penting untuk menjamin ketahanan data.

Pengesahan Pengeluar

Pengeluar boleh mengkonfigurasikan bilangan pengesahan (acks) yang perlu ditunggu sebelum menganggap mesej telah 'berjaya dihantar'. Hal ini mempengaruhi ketahanan data dan prestasi.

  • acks=0: Tiada pengesahan. Paling pantas, tetapi kehilangan data mungkin berlaku.
  • acks=1: Pemimpin mengesahkan penerimaan. Lebih baik, tetapi data boleh hilang jika pemimpin gagal sebelum pengikut disegerakkan.
  • acks=all (atau -1): Semua ISR mesti mengesahkan. Paling perlahan, tetapi memberikan jaminan ketahanan yang paling kukuh.

Cara Pengikut Kekal Terkini

Pengikut terus-menerus menghantar permintaan pengambilan kepada pemimpin untuk mendapatkan mesej baharu. Kemudian, pengikut menulis mesej tersebut ke dalam log tempatan masing-masing.

Penyegerakan berterusan ini memastikan bahawa jika pemimpin gagal, pengikut daripada ISR boleh menjadi pemimpin baharu dengan pantas tanpa kehilangan data.

Kegagalan Broker: Pemimpin Terhenti

Apakah yang berlaku jika broker yang mengehos pemimpin bagi sesuatu petak gagal?

  1. Pemimpin menjadi tidak tersedia.
  2. Kafka memulakan pemilihan pemimpin secara automatik.
  3. Salah satu broker lain dalam set ISR dipilih sebagai pemimpin baharu.

Proses ini pantas dan telus kepada klien, sekali gus memastikan ketersediaan tinggi.

Kegagalan Broker: Pengikut Terhenti

Jika broker yang mengehos replika pengikut gagal, keadaannya kurang kritikal:

  • Pengikut dikeluarkan buat sementara daripada set ISR.
  • Pemimpin terus melayan permintaan.
  • Setelah broker yang gagal pulih, broker itu akan mengejar kemajuan pemimpin dan menyertai semula ISR.

Sistem kekal beroperasi sepenuhnya sepanjang tempoh tersebut.

Mengkonfigurasi Faktor Replikasi

Anda menetapkan faktor replikasi apabila mencipta topik. Berikut ialah contoh menggunakan alat baris perintah Kafka:

kafka-topics.sh --create --topic my_replicated_topic --bootstrap-server localhost:9092 --partitions 3 --replication-factor 3

Perintah ini mencipta 'my_replicated_topic' dengan 3 petak, setiap satunya mempunyai 3 salinan merentas broker.

Semakan Pantas Replikasi

Pertimbangkan petak topik Kafka dengan faktor replikasi 3. Pada masa ini, pemimpin dan seorang pengikut disegerakkan, tetapi seorang lagi pengikut tidak tersedia buat sementara. Apakah keadaan set In-Sync Replica (ISR)?

Ulang Kaji: Asas Replikasi

Kita telah membincangkan peranan penting replikasi dalam Kafka untuk keselamatan data dan ketersediaan tinggi.

  • Faktor Replikasi: Bilangan salinan data.
  • Pemimpin & Pengikut: Peranan untuk mengendalikan permintaan dan menyegerakkan data.
  • Replika Disegerakkan (ISR): Set penting yang terdiri daripada replika yang disegerakkan sepenuhnya.
  • Pengesahan (acks): Tetapan pengeluar untuk mengawal ketahanan data.
  • Toleransi Kegagalan: Cara Kafka mengendalikan kegagalan broker dengan baik.

Memahami konsep ini penting untuk membina sistem Kafka yang kukuh!

Percuma untuk bermula

Pelajari Asas Apache Kafka & Pemprosesan Aliran dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
12
Pelajaran
48

Soalan Lazim

Adakah pelajaran “Replikasi dan Toleransi Kegagalan” percuma?

Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Asas Apache Kafka & Pemprosesan Aliran, termasuk “Replikasi dan Toleransi Kegagalan”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus Asas Apache Kafka & Pemprosesan Aliran merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Replikasi dan Toleransi Kegagalan”?

Pelajari cara Kafka memastikan keselamatan data dan ketersediaan tinggi melalui replikasi topik merentas broker. Anda berlatih Asas Apache Kafka & Pemprosesan Aliran menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan Asas Apache Kafka & Pemprosesan Aliran?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Asas Apache Kafka & Pemprosesan Aliran di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 1 daripada 4.

Berapa lamakah pelajaran “Replikasi dan Toleransi Kegagalan” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran Asas Apache Kafka & Pemprosesan Aliran ini?

Ya. Setiap pelajaran Asas Apache Kafka & Pemprosesan Aliran menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Replikasi dan Toleransi Kegagalan
  2. Peranan Pengawal dan ZooKeeper/Kraft
  3. Mereka Bentuk Kelompok Kafka
  4. Kesedaran Rak dan Penempatan Berbilang AZ
← Kembali ke Asas Apache Kafka & Pemprosesan Aliran