Чему вы научитесь
- Глубоко понимать внутреннюю архитектуру: Работу брокеров, партиций, роль Контроллера кластера, механизм ISR (In-Sync Replicas) и принципы распределения данных.
- Оптимизировать Kafka производительность продюсеров и консьюмеров: Настройку ключевых параметров (acks, linger.ms, compression.type, batch.size для продюсеров; fetch.min.bytes, max.poll.records для консьюмеров) для достижения максимальной пропускной способности и минимальных задержек.
- Гарантировать надежную доставку данных: Реализацию идемпотентных продюсеров (enable.idempotence=true) с использованием API (initTransactions(), beginTransaction(), commitTransaction(), обработка ошибок).
- Обеспечивать Exactly-Once семантику: Понимать и применять транзакционную обработку как в продюсерах, так и в консьюмерах (isolation.level=read_committed).
- Строить сложные потоковые приложения с Kafka Streams: Создавать топологии (DAG), использовать процессоры (Processor, Transformer), управлять состоянием через StateStore, применять оконные агрегации (Tumbling, Hopping, Session Windows).
- Работать со схемами данных: Интегрировать Avro/Protobuf, использовать Confluent Schema Registry для управления версиями и совместимостью схем (BACKWARD, FORWARD, FULL), выполнять сериализацию/десериализацию.
- Обеспечивать безопасность кластера: Настраивать аутентификацию (SASL/SCRAM), шифрование (SSL) и авторизацию.
- Мониторить состояние кластера Kafka: Работать с ключевыми JMX-метриками (Lag, Request Latency), настраивать визуализацию в Grafana + Prometheus.
- Реализовывать паттерны отказоустойчивости: Создавать Dead Letter Queues (DLQ) для обработки некорректных сообщений, применять Retry-механизмы с экспоненциальным backoff.
- Гарантировать порядок обработки: Понимать и использовать гарантии порядка в рамках партиции.
- Решать сложные задачи с Kafka на Java: Строить транзакционные приложения (интеграция с БД с Debezium), реализовывать Real-Time аналитику с оконными функциями Streams.
О курсе
Для кого этот курс
✅ Для инженеров данных (Data Engineers), строящих надежные и эффективные ETL/ELT конвейеры и потоковые приложения.
✅ Для архитекторов распределенных систем, которым необходимо глубокое понимание Kafka для проектирования масштабируемых и отказоустойчивых решений.
✅ Для всех, кому критически важны: надежность доставки данных (Exactly-Once), согласованность, производительность и безопасность в экосистеме.
Этот курс создан для профессионалов, которые желают:
💡 Стать экспертами Kafka: Понимать систему на уровне архитектуры и тонких настроек, а не только базового API.
💡 Строить промышленные решения: Реализовывать системы с гарантиями Exactly-Once, транзакционной целостностью и высокой доступностью.
💡 Эффективно решать сложные задачи: Обрабатывать потоки данных в реальном времени, управлять схемами, обеспечивать безопасность и мониторинг.
💡 Повысить свою ценность на рынке: Владение продвинутыми темами Kafka – ключевой навык для разработчиков и инженеров данных в высоконагруженных проектах.
💡 Применять в будущем знания полученные из курса: Через погружение представленных примеров кода и схем из реалистичных проектов, моделирующих задачи из реального мира.
Начальные требования
🧑💻 Обязательный опыт работы с:
🔹Java Core (Solid): ООП, Коллекции, Многопоточность (базовое понимание),
🔹Работа с Maven / Gradle. Уверенное владение.
🔹Базовый Кафка API: Умение создавать простые producer и consumer (KafkaProducer, KafkaConsumer). Понимание концепций Topic, Partition, Consumer Group, Offset.
🔹Базовое понимание распределенных систем.
🛠️ Технические требования:
🔹Компьютер / ноутбук с ОС: Windows 10 / 11, macOS, или Linux.
🔹Установленные: JDK 17+, Kafka , Докер.
🔹IDE (IntelliJ IDEA, Eclipse).
Преподаватели курса
Как проходит обучение
🚩 В конце каждого модуля вас ждет закрепление материала в виде тестов.
🚩 Реальные кейсы и код: В процессе обучения мы будем детально разбирать примеры кода из реальных промышленных сценариев использования Кафка, что даст вам практическое понимание реализации продвинутых фич.
🚩 Визуализация сложных концепций: Для лучшего понимания глубоких архитектурных аспектов (брокеры, партиции, репликация, потоки обработки) в курсе активно используются наглядные схемы (включая Mermaid-диаграммы). Схемы дополняют примеры кода, помогая увидеть "картину целиком".
Сертификат
Что вы получите
- понимание архитектуры kafka с java: брокеры, партиции, репликация, isr, роль контроллера;
- навыки оптимизации производительности продюсеров (настройка acks, linger.ms, batch.size, compression.type) и консьюмеров (fetch.min.bytes, max.poll.records);
- умение реализовывать идемпотентных продюсеров (enable.idempotence=true);
- навык планирования гарантии exactly-once семантики (изоляция консьюмера read_committed);
- навыки анализа сложных потоковых приложений с kafka streams (топологии, процессоры, statestore, оконные агрегации);
- умение работать со схемами данных (avro/protobuf) и управлять ими через schema registry (стратегии совместимости);
- навыки настройки безопасности: sasl/scram, ssl, acl (-acls.sh);
- умение настраивать мониторинг кластера с помощью jmx, prometheus и grafana;
- знание и применение паттернов отказоустойчивости kafka: dead letter queue (dlq), retry с экспоненциальным backoff;
- понимание гарантий порядка обработки сообщений в партициях;
- понимание построения транзакционных приложений (интеграция кафка и бд через debezium);
- навык создания real-time аналитики с streams и оконными функциями;
- опыт развертывания и настройки безопасного кластера в docker + kafka + java;
- сертификат об окончании курса.