Databases · DBC-45

Apache Kafka for Event-Driven Systems

18 hours 3 days
Last updated
Apache Kafka สำหรับระบบ Event-Driven

Apache Kafka for Event-Driven Systems is a 18-hour training course by IT Genius Institute. Systems wired together with direct point-to-point calls turn into a tangle as services multiply, and when a downstream system goes down the data goes with it.…

Training schedule

No public rounds are open right now — register your interest and we will contact you when the next round opens, or request an in-house session for your team.

Corporate training quote

Systems wired together with direct point-to-point calls turn into a tangle as services multiply, and when a downstream system goes down the data goes with it. Apache Kafka solves this by acting as a durable central hub for events, so producers and consumers stay independent, a system that comes back after an outage can resume reading from exactly where it stopped, and new consumers can be added without disturbing the existing ones.

This course takes learners from Kafka concepts to real production use: broker and partition architecture, designing topics and choosing keys for good data distribution, writing producers with a clear grasp of delivery guarantees, how consumer groups and offsets work, managing data formats with schemas, connecting external systems with Kafka Connect, stream processing with Kafka Streams, and finally reliability, security and monitoring in production. (3 days, 6 hours per day, 18 hours in total, Intermediate level.)

Objectives

  • Understand event-driven architecture and when to use it instead of direct API calls
  • Explain Kafka architecture: brokers, topics, partitions, replicas and offsets
  • Install and operate a Kafka cluster with the essential command line tools
  • Design topics and choose keys for good distribution while preserving ordering
  • Write producers and understand acknowledgements and the idempotent producer
  • Write consumers and understand consumer groups, rebalancing and offset management
  • Manage data formats and evolve schemas safely
  • Connect databases and external systems with Kafka Connect with little code
  • Process data in motion with Kafka Streams and run Kafka securely with monitoring

Who this course is for

  • Software developers designing microservice-based systems
  • Data engineers who need to move data between systems in real time
  • Solution architects designing flexible and resilient system integration
  • System administrators and DevOps engineers who install and operate Kafka clusters
  • Teams suffering from tightly coupled systems and data loss when downstream services fail

Prerequisites

  • Basic understanding of how business systems work and integrate with each other
  • Ability to read and write code in at least one language (examples use Python)
  • Command line skills and basic networking concepts
  • Prior Docker experience makes the labs run more smoothly

Curriculum

Course Details

A 3-day course, 6 hours per day (18 hours in total), delivered as lectures with hands-on labs against a multi-broker Kafka cluster. Intermediate level. Learners take home a lab guide, complete producer, consumer and Kafka Streams sample code, a Docker Compose file for standing up a cluster, and a production readiness checklist. Kafka is open source and can be used in the organization at no licensing cost.

Day 1: Kafka Concepts and Architecture

Section 1: Event-Driven Architecture Concepts

  • Why direct point-to-point integration breaks down as services grow and downstream systems fail
  • Events, message queues and event streaming, and the differences that matter
  • Real use cases: system integration, real-time processing and event logging
  • When Kafka is the right choice and when a direct API call still fits better

Section 2: Apache Kafka Architecture

  • Core components: brokers, topics, partitions, replicas, leaders and followers
  • The append-only log and the offsets that let consumers replay data
  • Replication and tolerating broker failure
  • Retention periods and log compaction

Section 3: Installing and Operating a Cluster

  • Standing up a Kafka cluster with Docker Compose and checking cluster health
  • Command line tools for creating topics, producing and consuming messages
  • Using a UI to inspect topics, partitions and consumer groups
  • Lab: build a cluster, create your first topic and produce and consume from the CLI

Section 4: Designing Topics and Partitions

  • Topic naming conventions and sizing partition counts for the expected load
  • Choosing keys to distribute data while keeping related records in order
  • How partition count affects throughput, parallelism and adding consumers later
  • Lab: design and create topics for a business scenario and verify data distribution

Day 2: Producers, Consumers and Integration

Section 5: Producers and Delivery Guarantees

  • Writing producers and the settings that matter: acks, retries and batching
  • Delivery guarantees: at most once, at least once and exactly once
  • The idempotent producer and transactions when correctness is critical
  • Lab: write a producer and observe its behaviour when a broker stops responding

Section 6: Consumers and Consumer Groups

  • Writing consumers and how consumer groups divide partitions between members
  • Offset management: auto commit versus manual commit and the risk of duplicates or loss
  • What triggers a rebalance, its impact and how to reduce the pain
  • Lab: add and remove consumers from a group and watch partitions redistribute

Section 7: Schemas and Data Formats

  • Common formats: JSON and Avro and the trade-offs of each
  • Schema Registry and keeping compatibility as the data structure evolves
  • Designing events that other systems can rely on for years
  • Lab: define a schema for an event and evolve it without breaking consumers

Section 8: Kafka Connect for System Integration

  • How Kafka Connect works and the difference between source and sink connectors
  • Pulling data from databases into Kafka and pushing it out to destinations
  • Change data capture for tracking database changes as events
  • Lab: configure a connector that streams database rows into a topic with no code

Day 3: Streams, Reliability and Production

Section 9: Stream Processing with Kafka Streams

  • Processing data in motion: filtering, transforming and aggregating in real time
  • Windowed aggregation and continuous counts and summaries
  • Streams versus tables and joining two streams together
  • Lab: build a stream processing job that summarizes topic data in real time

Section 10: Reliability and Performance

  • Replication factor and minimum in-sync replicas so data is never lost
  • Handling and recovering from broker failure, and testing it for real
  • Tuning producer and consumer performance and managing consumer lag
  • Lab: simulate a broker failure and observe how the system keeps working

Section 11: Security and Monitoring

  • Encrypting connections and authenticating clients
  • Least-privilege authorization for topic access
  • Monitoring the cluster: consumer lag, broker health and the metrics that matter
  • Planning cluster maintenance and upgrading without downtime

Section 12: Capstone and Real-World Adoption

  • Capstone: design and build an event-driven system for one business process end to end
  • Present your topic architecture and the reasoning behind the design
  • How to adopt Kafka in the organization, starting small before scaling out
  • Workshop: present what you built and review the design together

Frequently asked questions

Who is Apache Kafka for Event-Driven Systems for, and what background is needed?

Built for Software developers designing microservice-based systems · Data engineers who need to move data between systems in real time · Solution architects designing flexible and resilient system integration Background you should have: Basic understanding of how business systems work and integrate with each other · Ability to read and write code in at least one language (examples use Python) Not sure the fit is right? Talk to our team on LINE @itgenius or call 02-570-8449.

How much does Apache Kafka for Event-Driven Systems cost and how long does it run?

THB 12,500 (currently THB 11,250 on promotion). The course runs 18 hours. The fee covers course materials, lunch and refreshments throughout. Pay by bank transfer to the company account, confirm it on our payment page, and we can issue the receipt or tax invoice in your company's name.

Do I get a certificate?

Yes. Everyone who completes the course receives a Certificate of Completion from IT Genius Institute. Each certificate carries its own number, and anyone holding that number can verify it online on our certificate page, so you can add it to your portfolio or pass it to HR as evidence of training.

Where does the training take place, and is there an online option?

You can attend onsite at IT Genius Institute or arrange to join online, and we also run it as a private in-house session for your team. Ask about dates and venues on LINE @itgenius or call 02-570-8449.

What if I fall behind or miss a session — can I retake it?

Yes. You may retake the same course free of charge in a later round, under the institute's conditions. Tell our team which course and round you attended, and we will check it and offer you the rounds that still have seats. Ask us on LINE @itgenius or call 02-570-8449.

How do I enrol, or request a quotation for my company?

Enrol online with the registration form on this page. You can register several attendees at once and enter your tax ID and billing address for the tax invoice. Or request a company quotation straight from the quote button. For anything else call 02-570-8449 or reach us on LINE @itgenius.

Instructors

Run this course for your whole team

We run this course in-house, tailored to your stack.

Corporate training quote