kafka-workshop

Apache Kafka™ and Kafka Streams Workshops

The repository contains the materials (i.e. agendas, slides, demos, exercises) for Apache Kafka™ and Kafka Streams workshops led by Jacek Laskowski.

The current version of the workshop may take up to 3 days and is intended for a variety of IT roles (e.g. developers, administrators, operators and architects).

The course is designed to help you master the essential aspects and operation of Apache Kafka and Kafka Streams in a fairly short time. After the course, you should have a clear understanding of Kafka with regard to administration, operation and application development.

No prior experience with Apache Kafka™ or Kafka Streams required.

Apache Kafka for Scala/Java Developers (2-Day Workshop)

Sample Agenda

A client-focused, hands-on track for Scala developers with no prior Kafka experience — no Kafka Connect, no Kafka Streams. See the full agenda and exercises.

  1. Kafka Clients (Producers and Consumers)
  2. Developing Kafka Producers
    1. Producer API
    2. KafkaProducer
  3. Developing Kafka Consumers
    1. Consumer API
    2. KafkaConsumer, TopicPartition, ConsumerRecord
    3. ConsumerRebalanceListener

Apache Kafka™ for Administrators and Operators

  1. The Essentials of Apache Kafka (Architecture and Core Concepts)
  2. Working with Kafka Topics
    1. Replicas and In-Sync Replicas (ISRs)
    2. Managing Topics with kafka-topics shell script
  3. Kafka Consumers, Consumer Groups, and Partition Rebalancing
  4. Kafka Configuration
    1. Kafka Server and Scheduled Recurring Tasks
    2. AdminClient
  5. Monitoring Kafka Cluster
    1. KafkaMetricsGroup
  6. Troubleshooting and Debugging
    1. LogManager and log.dirs (/tmp/kafka-logs) - Failure and Recovery
  7. Internals of KafkaServer and Other Services
  8. Kafka Security

Kafka Streams (Scala API)