Basisprincipes van Kafka - cursus 42.000 wrijven. van IBS Training Center, training 24 uur, Datum: 4 december 2023.
Gemengde Berichten / / November 29, 2023
Behandelde onderwerpen:
1. Recensie (theorie – 1 uur)
Wat is Kafka.
Voorbeelden van succesvol en niet succesvol gebruik van Kafka.
Kafka en de database: overeenkomsten en verschillen.
Kafka en berichtenwachtrij: overeenkomsten en verschillen.
Kafka-opslagarchitectuur: makelaars, onderwerpen, partities, segmenten, replica's.
Kafka-clusterarchitectuur: Zookeeper, partities, master- en slave-replicatieknooppunten, ISR.
Klanten en API's.
2. Een Cluster opzetten (oefenen – 1 uur)
Oefening 2.1: Een Kafka-cluster uitvoeren met Docker.
Dierenverzorger installeren.
Kafka-makelaars installeren.
3. Applicatieontwikkeling in Java (theorie – 2,5 uur, praktijk – 2,5 uur)
Kafka Producer-API: basisprincipes.
Oefening 3.1: Eén bericht verzenden.
Oefening 3.2: Meerdere berichten versturen.
Oefening 3.3: Meerdere berichten verzenden met expliciete partities.
Oefening 3.4: Berichten versturen zonder sleutels.
Kafka Consumer API: basisprincipes, consumentengroepen.
Oefening 3.5: Eén ontvanger.
Oefening 3.6: Meerdere ontvangers in één groep.
Extra functies: pakketten, herhalingen, idempotentie, transacties, consumentengroepen opnieuw in evenwicht brengen.
Oefening 3.7: Afzender zonder pakketten en herhalingen.
Oefening 3.8: Idempotente afzender.
Oefening 3.9: Transactionele afzender.
Oefening 3.10: Een transactie verzenden en ontvangen.
Oefening 3.11: Ontvangen-verwerken-verzenden in een transactie.
4. Externe toegang tot het Kafka-cluster (theorie – 2 uur, praktijk – 2 uur)
Beveiliging: SSL, SASL, Kerberos.
REST Proxy: berichten verzenden en ontvangen in JSON-, binaire en Avro-formaten.
Oefening 4.1: Toegang via REST Proxy.
Schemaregister: schemaregister.
Oefening 4.2: REST Proxy gebruiken met Schema Registry.
5. Onderhoud en monitoring (theorie – 1 uur, praktijk – 1 uur)
Het opzetten van een cluster voor verschillende doeleinden.
Zookeeper: configuratie, standalone- en quorummodus, CLI.
Oefening 5.1: Een Kafka-cluster monitoren met Prometheus.
6. Verschillende clusters (theorie – 1 uur, praktijk – 1 uur)
Waarom heb je mogelijk meerdere clusters nodig in Kafka?
MirrorMakerAccess.
Oefening 6.1: MirrorMaker gebruiken om clusters te synchroniseren.
Confluence-replicator.
7. Kafka Connect (theorie – 2 uur, praktijk – 2 uur)
Kafka Connect-architectuur.
Kafka Connect-gegevens zinken.
Oefening 7.1: FileStream-bestandsontvanger.
Oefening 7.2: JDBC-ontvanger.
Kafka Connect-gegevensbronnen.
Oefening 7.3: FileStream-bron.
Oefening 7.4: JDBC-bron.
8. Grondbeginselen van Kafka Streams (theorie – 2 uur, praktijk – 2 uur)
Kafka Streams: DSL, API, StreamBuilder, creatie en implementatie van topologie.
Demo 8.1: Implementatie van de Streams-topologie.
Demo 8.2: Een Streams-applicatie bouwen met StreamBuilder.
Kafka Streams-apparaat: multi-threading, meerdere instanties en taken.
Gegevensschema's in Kafka: serialisatie naar JSON-schema's, Avro-schema's, schemaregister, schema-evolutie.
Demo 8.3: JSON-schema's gebruiken.
Stateful verwerking: State Store, fouttolerantie voor State Stores.
KTable: Gegevensupdatestreams, caching, ophaalsnelheid, aggregatie.
Vensters in streams: tijdstempels, zwevend, springen, sessie.
Verbinding: stream naar stream, KTable naar KTable, stream naar KTable.