Arhitectura Kafka

Tweet

dacă nu sunteți sigur ce este Kafka, vedeți ce este Kafka?.

arhitectura Kafka

Kafka constă din înregistrări, subiecte, consumatori, producători, brokeri, jurnale, partiții și clustere. Înregistrările pot avea cheie (opțional), valoare și marcaj de timp. Înregistrările Kafka sunt imuabile. Un subiect Kafka este un flux de înregistrări ("/orders", "/user-signups"). Vă puteți gândi la un subiect ca la un nume de feed. Un subiect are un jurnal care este stocarea subiectului pe disc. Un jurnal de subiecte este împărțit în partiții și segmente. API-ul producătorului Kafka este utilizat pentru a produce fluxuri de înregistrări de date. API-ul Kafka Consumer este folosit pentru a consuma un flux de înregistrări de la Kafka. Un Broker este un server Kafka care rulează într-un Cluster Kafka. Brokerii Kafka formează un cluster. Clusterul Kafka este format din mulți brokeri Kafka pe mai multe servere. Broker, uneori, se referă la mai mult de un sistem logic sau ca Kafka ca un întreg.

Cloudurable oferă instruire Kafka, consultanță Kafka, asistență Kafka și ajută la configurarea clusterelor Kafka în AWS.

Arhitectura Kafka: Subiecte, producători și consumatori

 arhitectura Kafka - subiecte, producători și consumatori diagrama

Kafka folosește ZooKeeper pentru a gestiona clusterul. ZooKeeper este folosit pentru a coordona topologia brokerilor / clusterului. ZooKeeper este un sistem de fișiere consistent pentru informații de configurare. ZooKeeper devine folosit pentru alegerile de conducere pentru liderii de partiție Broker subiect.

Arhitectura Kafka: Core Kafka

arhitectura Kafka-diagrama Kafka de bază

Kafka are nevoie de ZooKeeper

Kafka folosește Zookeeper pentru a face alegerea conducerii brokerului Kafka și a perechilor de partiții de subiect. Kafka folosește Zookeeper pentru a gestiona descoperirea serviciilor pentru brokerii Kafka care formează clusterul. Zookeeper trimite modificări ale topologiei la Kafka, astfel încât fiecare nod din cluster știe când s-a alăturat un nou broker, un Broker a murit, un subiect a fost eliminat sau a fost adăugat un subiect etc. Zookeeper oferă o vizualizare sincronizată a configurației clusterului Kafka.

Producător Kafka, consumator, detalii subiect

producătorii Kafka scriu la subiecte. Consumatorii Kafka citesc din subiecte. Un subiect este asociat cu un jurnal care este structura de date pe disc. Kafka adaugă înregistrări de la un producător(producători) la sfârșitul unui jurnal de subiecte. Un jurnal de subiecte este format din mai multe partiții care sunt răspândite pe mai multe fișiere care pot fi răspândite pe mai multe noduri de cluster Kafka. Consumatorii citesc din subiectele Kafka la cadența lor și pot alege unde sunt (offset) în Jurnalul de subiecte. Fiecare grup de consumatori urmărește compensarea de unde au rămas citirea. Kafka distribuie partițiile jurnal subiect pe diferite noduri într-un cluster de înaltă performanță cu scalabilitate orizontală. Răspândirea partițiilor ajută la scrierea rapidă a datelor. Partițiile jurnal subiect sunt Kafka mod de a ciob citește și scrie în Jurnalul subiect. De asemenea, partițiile sunt necesare pentru ca mai mulți consumatori dintr-un grup de consumatori să lucreze în același timp. Kafka reproduce partiții la mai multe noduri pentru a oferi failover.

arhitectura Kafka: partiție Subiect, grup de consumatori, Offset și producători

arhitectura Kafka: Partiția subiectului, grupul de consumatori, Offset și diagrama producătorilor

scara și viteza Kafka

cum poate scala Kafka dacă mai mulți producători și consumatori citesc și scriu în același jurnal de subiecte Kafka în același timp? În primul rând Kafka este rapid, Kafka scrie la sistemul de fișiere secvențial, care este rapid. Pe o unitate rapidă modernă, Kafka poate scrie cu ușurință până la 700 MB sau mai mulți octeți de date pe secundă. Kafka Cântare scrie și citește de sharding busteni subiect în partiții. Recall subiecte jurnalele pot fi împărțite în mai multe partiții care pot fi stocate pe mai multe servere diferite, iar aceste servere pot utiliza mai multe discuri.Mai mulți producători pot scrie pe partiții diferite ale aceluiași subiect. Mai mulți consumatori din mai multe grupuri de consumatori pot citi eficient din diferite partiții.

Kafka Brokers

un cluster Kafka este format din mai mulți brokeri Kafka. Fiecare Broker Kafka are un ID unic (număr).Brokerii Kafka conțin partiții de jurnal de subiecte. Conectarea la un broker bootstraps un client la întregul cluster Kafka.Pentru failover, doriți să începeți cu cel puțin trei până la cinci brokeri. Un cluster Kafka poate avea 10, 100 sau 1.000 de brokeri într-un cluster, dacă este necesar.

Kafka Cluster, Failover, ISRs

Kafka sprijină replicare pentru a sprijini failover. Amintiți-vă că Kafka folosește Zookeeperpentru a forma brokerii Kafka într-un cluster și fiecare nod din clusterul Kafka este numit Broker Kafka.Partițiile subiect pot fi reproduse pe mai multe noduri pentru failover. Subiectular trebui să aibă un factor de replicare mai mare de 1 (2 sau 3). De exemplu, dacă se execută în AWS, v-ar dori să fie în măsură să supraviețuiască o singură availabilityzone întrerupere.Dacă un Broker Kafka coboară, atunci brokerul Kafka care este un ISR (replica in-sync)poate servi date.

Kafka Failover vs. Kafka Disaster Recovery

Kafka folosește replicarea pentru failover. Replicarea partițiilor de jurnal de subiecte Kafkapermite eșecul unui rack sau a zonei de disponibilitate AWS (az). Aveți nevoie de un replicationfactor de cel puțin 3 pentru a supraviețui unui singur eșec AZ. Trebuie să utilizați Mirror Maker, Un utilitar Kafka care este livrat cu Kafka core, pentru recuperarea în caz de dezastru. Mirror Makerreplicates un cluster Kafka la un alt centru de date sau regiune AWS.Ei numesc ceea ce face Mirror Maker oglindirea ca să nu fie confundată cu replicarea.

notă nu există nici o regulă greu și rapid cu privire la modul în care trebuie să configurați clusterul Kafka în sine.Ați putea, de exemplu, să configurați întregul cluster într-un singur AZ, astfel încât să puteți utiliza grupuri îmbunătățite de rețea și de plasare pentru un randament mai mare, apoi să utilizați Mirror Makerpentru a reflecta cluster-ul într-un alt AZ din aceeași regiune ca un standby la cald.

arhitectura Kafka: coordonarea Kafka Zookeeper

 arhitectura Kafka-diagrama de coordonare Kafka Zookeeper

Kafka subiecte arhitectura

vă rugăm să continuați să citiți despre arhitectura Kafka. Următorul articol acoperă arhitectura subiectelor Kafkacu o discuție despre modul în care partițiile sunt utilizate pentru procesarea nereușită și paralelă.

  • ce este Kafka?
  • Kafka Architecture
  • Kafka Topic Architecture
  • Kafka Consumer Architecture
  • Kafka Producer Architecture
  • Kafka Architecture and low level design
  • Kafka and Schema Registry
  • Kafka and Avro
  • ecosistemul Kafka
  • Kafka vs. JMS
  • Kafka versus Kinesis
  • tutorial Kafka: Folosind Kafka din linia de comandă
  • Tutorial Kafka: Kafka Broker Failover și failover pentru consumatori
  • Tutorial Kafka
  • Tutorial Kafka: scrierea unui exemplu Producător Kafka în Java
  • Tutorial Kafka: scrierea unui exemplu consumator Kafka în Java
  • Arhitectură Kafka: compactare jurnal
  • arhitectura Kafka: diapozitive PDF de nivel scăzut

despre Cloudurable

sperăm că v-a plăcut acest articol. Vă rugăm să furnizați feedback.Cloudurable oferă instruire Kafka, consultanță Kafka, asistență Kafka și ajută la configurarea clusterelor Kafka în AWS.

verificați noul nostru curs GoLang. Oferim Instruire la fața locului Go Lang, care este condusă de instructor.

Tweet

Lasă un răspuns

Adresa ta de email nu va fi publicată.