14 parasta Kafka-haastattelun kysymystä ja vastausta (2025)

Tässä Kafkan haastattelukysymyksiä ja vastauksia niin fuksilaisille kuin kokeneille hakijoille unelmatyönsä saamiseen.


1) Mainitse mikä on Apache Kafka?

Apache Kafka on Apachen kehittämä julkaisu-tilausviestijärjestelmä, joka on kirjoitettu Scalassa. Se on hajautettu, osioitu ja replikoitu lokipalvelu.

Ilmainen PDF-lataus: Kafka-haastattelun kysymyksiä ja vastauksia


2) Mainitse mikä on perinteinen viestinvälitystapa?

Perinteinen viestinsiirtomenetelmä sisältää kaksi tapaa

  • Jonotus: Jonossa joukko kuluttajia voi lukea viestin palvelimelta ja jokainen viesti menee yhdelle heistä
  • Julkaise-tilaa: Tässä mallissa viestit lähetetään kaikille kuluttajille

Kafka kattaa yksittäisen kuluttajan abstraktion, joka yleisti molemmat edellä mainitut - kuluttajaryhmä.


3) Mainitse mitä hyötyä Apache Kafkasta on perinteiseen tekniikkaan verrattuna?

Apache Kafka tarjoaa seuraavat edut perinteiseen viestintätekniikkaan verrattuna

  • Nopeasti: Yksi Kafka-välittäjä voi palvella tuhansia asiakkaita käsittelemällä megatavuja luku- ja kirjoitusmäärää sekunnissa
  • skaalautuva: Tiedot on osioitu ja virtaviivaistettu useille koneille suuremman datan mahdollistamiseksi
  • Kestävä: Viestit ovat pysyviä ja kopioidaan klusterin sisällä tietojen katoamisen estämiseksi
  • Designin jakelija: Se tarjoaa vikasietotakuun ja kestävyyden

4) Mainitse mitä välittäjä tarkoittaa Kafkassa?

Kafka-klusterissa välittäjätermiä käytetään viittaamaan palvelimeen.


5) Mainitse mikä on viestin enimmäiskoko, jonka Kafka-palvelin voi vastaanottaa?

Kafka-palvelimen vastaanottaman viestin enimmäiskoko on 1000000 tavua.

Kafkan haastattelukysymykset
Kafkan haastattelukysymykset

6) Selitä, mikä on Zookeeper Kafkassa? Voimmeko käyttää Kafkaa ilman Zookeeperiä?

Zookeeper on avoimen lähdekoodin korkean suorituskyvyn koordinointipalvelu, jota käytetään Kafkan mukauttamiin hajautettuihin sovelluksiin. Ei, ei ole mahdollista ohittaa Zookeeperia ja yhdistää suoraan Kafka-välittäjään. Kun Zookeeper on alhaalla, se ei voi palvella asiakkaan pyyntöä.

  • Zookeeperiä käytetään periaatteessa viestimään klusterin eri solmujen välillä
  • Kafkassa sitä käytetään siirron vahvistamiseen, joten jos solmu epäonnistuu joka tapauksessa, se voidaan hakea aiemmin tehdystä offsetista
  • Tämän lisäksi se suorittaa myös muita toimintoja, kuten johtajan havaitseminen, hajautettu synkronointi, konfiguraatioiden hallinta, tunnistaa uuden solmun lähtemisen tai liittymisen, klusterin, solmun tilan reaaliajassa jne.

7) Selitä, kuinka kuluttaja kuluttaa viestin Kafkassa?

Viestien siirto Kafkassa tapahtuu käyttämällä sendfileä API. Se mahdollistaa tavujen siirron socketista levylle ytimen tilaa säästävien kopioiden ja ytimen käyttäjän välisen kutsun kautta takaisin ytimeen.


8) Selitä, kuinka voit parantaa etäkuluttajan suorituskykyä?

Jos kuluttaja sijaitsee eri datakeskuksessa kuin välittäjä, saatat joutua säätämään socket-puskurin kokoa kuluttaaksesi pitkän verkon latenssin.

Apache Kafkan haastattelukysymykset
Apache Kafkan haastattelukysymykset

9) Selitä, kuinka voit saada täsmälleen kerran viestiä Kafkasta tiedontuotannon aikana?

Datan, tuotannon aikana, jotta saat Kafkasta täsmälleen kerran viestiä, sinun on noudatettava kahta asiaa päällekkäisyyksien välttäminen tiedonkulun aikana ja päällekkäisyyksien välttäminen tiedontuotannon aikana. Tässä on kaksi tapaa saada täsmälleen yksi semantiikka tiedontuotannon aikana:

  1. Käytä yhtä kirjoittajaa osiota kohden, joka kerta kun saat verkkovirheen, tarkistaa kyseisen osion viimeisen viestin nähdäkseen, onnistuiko viimeinen kirjoitus.
  2. Sisällytä viestiin ensisijainen avain (UUID tai jotain) ja poista kuluttajan kaksoiskappale

10) Selitä, kuinka voit vähentää ISR:n vaihtuvuutta? Milloin välittäjä lähtee ISR:stä?

ISR on joukko viestikopioita, jotka on synkronoitu täysin johtajien kanssa, toisin sanoen ISR:ssä on kaikki viestit, jotka on sitoutunut. ISR:n tulee aina sisältää kaikki kopiot, kunnes tapahtuu todellinen vika. Replika pudotetaan pois ISR:stä, jos se poikkeaa johtajasta.


11) Miksi replikointi vaaditaan Kafkassa?

Viestin replikointi Kafkassa varmistaa, että julkaistu viesti ei häviä ja että se voidaan kuluttaa konevirheen, ohjelmavirheen tai yleisempien ohjelmistopäivitysten sattuessa.


12) Mitä se tarkoittaa, jos replika pysyy ISR:n ulkopuolella pitkään?

Jos replika pysyy ISR:n ulkopuolella pidemmän aikaa, se osoittaa, että seuraaja ei pysty noutamaan tietoja yhtä nopeasti kuin johtajassa kertynyt data.


13) Mainitse mitä tapahtuu, jos ensisijainen kopio ei ole ISR:ssä?

Jos haluttu replika ei ole ISR:ssä, ohjain ei pääse liikkumaan johto haluttuun kopioon.


14) Onko mahdollista saada viesti offset valmistuksen jälkeen?

Sitä ei voi tehdä luokasta, joka käyttäytyy tuottajana kuten useimmissa jonojärjestelmissä, sen tehtävänä on ampua ja unohtaa viestit. Välittäjä hoitaa muun työn, kuten asianmukaisen metatietojen käsittelyn tunnisteilla, offsetilla jne. Viestin kuluttajana saat korvauksen Kafka-välittäjältä. Jos katsot sisään Yksinkertainen kuluttaja luokkaa, huomaat sen hakevan MultiFetchResponse objektit, jotka sisältävät siirtymiä luettelona. Tämän lisäksi, kun toistat Kafka-viestin, sinulla on MessageAndOffset objektit, jotka sisältävät sekä offsetin että lähetetyn viestin.

Nämä haastattelukysymykset auttavat myös vivassasi (suullinen)

Jaa:

Jätä vastaus

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *