informasi kontak saya
Surat[email protected]
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Terdapat Broker Pengontrol di cluster Kafka, yang bertanggung jawab atas manajemen dan koordinasi metadata.
Kafka menggunakan Zookeeper sebagai alat penyimpanan dan manajemen untuk metadata cluster. Zookeeper menyimpan informasi status cluster, termasuk semua informasi Topik, partisi, Pemimpin dan replika, dll.
Ketika status cluster berubah, Controller Broker akan menulis informasi perubahan ke Zookeeper.
Ketika Broker Pengontrol saat ini gagal, Broker lain di cluster Kafka akan mendeteksi situasi ini dan melakukan pemilihan melalui Zookeeper.
Setelah Broker berhasil terpilih sebagai Broker Pengendali baru, Broker tersebut akan membaca metadata cluster terbaru dari Zookeeper.
LogManager
Bertanggung jawab terutama untuk mengelola penyimpanan dan pengambilan log (log) Kafka.
Misalnya: produser mengirimkan pesan ke Leader Broker1 dari Partition0.LogManager
Tulis pesan ke file log Partition0 di Broker1.
ReplicationManager
Terutama bertanggung jawab untuk mengelola replikasi dan sinkronisasi data partisi.
Sinkronisasi antara Leader dan Follower masing-masing partisi dilakukan secara mandiri. Artinya, setiap partisi memiliki proses sinkronisasi tersendiri dan tidak bergantung pada partisi lain.
Meskipun proses sinkronisasi setiap partisi bersifat independen, setiap Broker akan memulai thread replikasi yang sesuai untuk setiap partisi yang dikelolanya (baik Leader atau Follower), dan thread ini bertanggung jawab untuk menangani tugas sinkronisasi tertentu.
Misalnya:ReplicationManager
Dorong pesan yang baru ditulis di Broker1 ke Follower Broker2 dan Broker3 dari Partition0.ReplicationManager
Permintaan replikasi yang diterima dari Broker1 diproses di Broker2 dan Broker3, menulis pesan ke file log masing-masing.
SocketServer
Ini adalah komponen di Kafka Broker dan bertanggung jawab menangani koneksi jaringan dan operasi I/O. Ia bertanggung jawab untuk menerima permintaan koneksi dari klien dan Broker lain, dan menetapkan thread ke setiap koneksi untuk diproses.
NetworkServer
Ini adalah bagian inti dari kerangka komunikasi jaringan Kafka dan bertanggung jawab untuk mengelola dan menjadwalkan permintaan jaringan. Ia menggunakan NIO (non-blocking I/O) untuk menangani koneksi jaringan yang sangat bersamaan.
Komponen yang berkomunikasi dengan Zookeeper.