Geavanceerd Spring Boot 4: gebeurtenisgestuurde architectuur (Kafka) · Les

Consumergroepen en rebalancing

Begrijp hoe Kafka-consumergroepen het verbruik schalen, hoe partities worden toegewezen en wat er tijdens een rebalance gebeurt, met Spring Kafka in gedachten.

Les 4 van 413 stappen

Consumergroepen en rebalancing is een gratis Geavanceerd Spring Boot 4: gebeurtenisgestuurde architectuur (Kafka)-les op CoddyKit. Dit is les 4 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Geavanceerd Spring Boot 4: gebeurtenisgestuurde architectuur (Kafka). Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Geavanceerd Spring Boot 4: gebeurtenisgestuurde architectuur (Kafka) bevat in totaal 4 lessen.

Waarom consumentengroepen?

Met een consumentengroep kunnen meerdere consumentinstanties het lezen van een topic gezamenlijk uitvoeren. Kafka wijst elke partitie toe aan precies één consument in de groep.

Groeps-id

Consumenten worden lid van een groep door een group.id te delen. Kafka houdt de offsetpositie per groep bij, zodat elke groep het topic onafhankelijk leest.

spring.kafka.consumer.group-id=order-service

Partities bepalen de parallelliteit

Het aantal partities bepaalt de maximale parallelliteit. Met vier partities kunnen maximaal vier consumenten in een groep tegelijk werken.

topic orders: 4 partitions
group with 4 consumers -> 1 partition each

Extra consumenten staan stil

Als een groep meer consumenten dan partities heeft, staan de extra consumenten stil. Schaal het aantal partities om het verbruik boven de huidige limiet uit te breiden.

6 consumers, 4 partitions -> 2 idle

Wat een herverdeling activeert

Bij een herverdeling worden partities opnieuw toegewezen wanneer het groepslidmaatschap verandert.

  • Een consument treedt toe of vertrekt
  • Een consument wordt als niet actief beschouwd
  • Er worden partities toegevoegd

Kosten van herverdeling

Tijdens een herverdeling stoppen consumenten kort met verwerken terwijl partities opnieuw worden toegewezen. Frequente herverdelingen verlagen de verwerkingscapaciteit.

Heartbeats en beschikbaarheid

Consumenten sturen heartbeats. Als deze langer dan session.timeout.ms uitblijven, wordt een consument als niet actief gemarkeerd en wordt een herverdeling gestart.

session.timeout.ms = 10000
heartbeat.interval.ms = 3000

Gezondheid van de poll-lus

Als de verwerking tussen twee polls langer duurt dan max.poll.interval.ms, wordt de consument verwijderd. Houd het werk per bericht begrensd of verhoog de limiet.

max.poll.interval.ms = 300000

Offsets vastleggen

Offsets leggen de voortgang per partitie en per groep vast. Spring Kafka kan offsets automatisch vastleggen of ze na succesvolle verwerking handmatig vastleggen voor ten minste-één-keer-bezorging.

spring.kafka.consumer.enable-auto-commit=false

Coöperatieve herverdeling

Het coöperatieve protocol voor herverdeling wijst alleen de partities opnieuw toe die moeten worden verplaatst. Zo wordt een volledige herverdeling waarbij alles wordt stilgelegd voorkomen.

partition.assignment.strategy=CooperativeStickyAssignor

Spring Kafka-listeners

Een @KafkaListener wordt automatisch lid van de geconfigureerde groep; door meerdere instanties van de app te starten, schaal je de groep zonder codewijziging.

@KafkaListener(topics = "orders", groupId = "order-service")
void onOrder(Order o) { ... }

Korte controle

Redeneer over parallelliteit.

Samenvatting

Je hebt geleerd dat een consumentengroep een topic deelt door elke partitie aan één consument toe te wijzen, waardoor het aantal partities de parallelliteit begrenst. Bij herverdelingen worden partities opnieuw toegewezen wanneer het groepslidmaatschap verandert, en wordt de verwerking kort onderbroken. Heartbeats en poll-intervallen bepalen of een consument actief blijft. Coöperatieve herverdeling en handmatig vastgelegde offsets houden Spring Kafka-consumenten efficiënt en betrouwbaar.

Gratis beginnen

Leer Geavanceerd Spring Boot 4: gebeurtenisgestuurde architectuur (Kafka) met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
12
Lessen
48

Veelgestelde vragen

Is de les “Consumergroepen en rebalancing” gratis?

Ja — je kunt hier op het web alle 3 lessen van het leerpad Geavanceerd Spring Boot 4: gebeurtenisgestuurde architectuur (Kafka), waaronder “Consumergroepen en rebalancing”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus Geavanceerd Spring Boot 4: gebeurtenisgestuurde architectuur (Kafka) bevat in totaal 4 lessen.

Wat leer ik in “Consumergroepen en rebalancing”?

Begrijp hoe Kafka-consumergroepen het verbruik schalen, hoe partities worden toegewezen en wat er tijdens een rebalance gebeurt, met Spring Kafka in gedachten. Je oefent met Geavanceerd Spring Boot 4: gebeurtenisgestuurde architectuur (Kafka) door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met Geavanceerd Spring Boot 4: gebeurtenisgestuurde architectuur (Kafka) te beginnen?

Ervaring vooraf is niet nodig. Geavanceerd Spring Boot 4: gebeurtenisgestuurde architectuur (Kafka) op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 4 van 4.

Hoe lang duurt de les “Consumergroepen en rebalancing”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over Geavanceerd Spring Boot 4: gebeurtenisgestuurde architectuur (Kafka)?

Ja. Elke les over Geavanceerd Spring Boot 4: gebeurtenisgestuurde architectuur (Kafka) bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. Overzicht van de Kafka-architectuur
  2. Topics, partitions en offsets
  3. Lokale Kafka instellen met Docker
  4. Consumergroepen en rebalancing
← Terug naar Geavanceerd Spring Boot 4: gebeurtenisgestuurde architectuur (Kafka)