le mie informazioni di contatto
Postamesophia@protonmail.com
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Nel cluster Kafka è presente un Controller Broker, responsabile della gestione e del coordinamento dei metadati.
Kafka utilizza Zookeeper come strumento di archiviazione e gestione dei metadati del cluster. Zookeeper salva le informazioni sullo stato del cluster, incluse tutte le informazioni su argomenti, partizioni, leader e repliche, ecc.
Quando lo stato del cluster cambia, Controller Broker scriverà le informazioni sulla modifica su Zookeeper.
Quando l'attuale Controller Broker fallisce, altri Broker nel cluster Kafka rileveranno questa situazione e condurranno le elezioni tramite Zookeeper.
Dopo che un broker è stato eletto con successo come nuovo broker controller, leggerà gli ultimi metadati del cluster da Zookeeper.
LogManager
Principalmente responsabile della gestione dell'archiviazione e del recupero dei log di Kafka (log).
Ad esempio: il produttore invia il messaggio al Leader Broker1 della Partizione0.LogManager
Scrivere il messaggio nel file di registro di Partition0 su Broker1.
ReplicationManager
Principalmente responsabile della gestione della replica e della sincronizzazione dei dati della partizione.
La sincronizzazione tra Leader e Follower di ciascuna partizione viene eseguita in modo indipendente. Cioè, ogni partizione ha il proprio processo di sincronizzazione e non dipende da altre partizioni.
Sebbene il processo di sincronizzazione di ciascuna partizione sia indipendente, ciascun Broker avvierà i thread di replica corrispondenti per ciascuna partizione che gestisce (sia Leader che Follower) e questi thread sono responsabili della gestione di attività di sincronizzazione specifiche.
Per esempio:ReplicationManager
Invia i messaggi appena scritti su Broker1 al follower Broker2 e Broker3 di Partition0.ReplicationManager
Le richieste di replica ricevute da Broker1 vengono elaborate su Broker2 e Broker3, scrivendo messaggi nei rispettivi file di registro.
SocketServer
È un componente di Kafka Broker ed è responsabile della gestione delle connessioni di rete e delle operazioni di I/O. È responsabile dell'accettazione delle richieste di connessione da parte dei client e di altri broker e dell'assegnazione di un thread a ciascuna connessione per l'elaborazione.
NetworkServer
È una parte fondamentale del framework di comunicazione di rete di Kafka ed è responsabile della gestione e della pianificazione delle richieste di rete. Utilizza NIO (I/O non bloccante) per gestire connessioni di rete altamente simultanee.
Componente che comunica con Zookeeper.