Course Outline
Introduction
- General overview of Apache Kafka
- Basics of event streaming and real-time data processing
- Detailed look at Apache Kafka and its key features
- Applications and advantages of Kafka in modern software development
Exploring Kafka Architecture and Core Principles
- Kafka architecture components: brokers, topics, partitions, and replicas
- Role of producers and consumers in message publishing and consumption
- Understanding ZooKeeper's function within Kafka
Kafka Topics and Partitioning
- Creating and configuring topics
- The impact of partitions on data distribution
- Replication strategies and fault tolerance in Kafka
Kafka Producers
- Implementing Kafka producers across various programming languages
- Techniques for message serialization
- Optimizing producer configurations and adhering to best practices
Kafka Consumers
- Building Kafka consumers in different programming languages
- Setting up consumer groups and managing offsets
- Approaches to message processing and ensuring delivery guarantees
Connecting Kafka to External Systems via Kafka Connect
- Overview of Kafka Connect and its connector ecosystem
- Configuring and deploying Kafka Connect for data integration
- Linking Kafka with external data sources
Building Streaming Applications with Kafka Streams and ksqlDB
- Familiarizing with Kafka Streams and its stream processing features
- Developing stream processing applications using Kafka Streams
- Leveraging ksqlDB for real-time data analysis and processing
Connecting Kafka Client Applications to Confluent Cloud
- Introduction to Confluent Cloud and its capabilities
- Establishing connections between Kafka client applications and Confluent Cloud
Kafka Security
- Overview of security features in Kafka
- Setting up SSL/TLS for secure communication channels
- Implementing authentication and authorization mechanisms in Kafka
Monitoring and Operations
- Tracking Kafka performance using metrics and monitoring tools
- Managing Kafka clusters and associated resources
- Diagnosing common issues and optimizing performance
Best Practices and Real-World Applications
- Guidelines for designing effective Kafka-based applications
- Case studies and examples of Kafka adoption across various industries
- Strategies for creating scalable and fault-tolerant Kafka architectures
Conclusion and Future Steps
Requirements
- Fundamental programming knowledge
Target Audience
- Developers
- Programmers
Testimonials (2)
Very practical examples. The trainer has tried to keep a pace where everybody is able to go with even though the group was quite inhomogeneous regarding the knowhow. He has provided a lot of support to basically everybody who asked for it :)
Georgi - BMW SA
Course - Apache Kafka for Developers
The labs and the slides combine well with Jorge's knowledge and love for Kafka.