Чему вы научитесь
- Разбираться в исходном коде Kafka на Scala/Java и системных вызовах Linux (io_uring, sendfile, eBPF) для низкоуровневой оптимизации.
- Проектировать отказоустойчивые распределенные топологии, настраивать консенсус KRaft и восстанавливать кластер при потере кворума.
- Конфигурировать подсистемы хранения, виртуальную память ОС и Page Cache брокера для максимизации IOPS дисковой подсистемы.
- Разрабатывать высокопроизводительные Lock-free партиционеры, транзакционные продюсеры и многопоточные отказоустойчивые консьюмеры.
- Строить аналитические графы обработки данных с помощью Kafka Streams и оптимизировать локальные хранилища состояний RocksDB под Highload.
- Внедрять интеграционные решения Change Data Capture на базе Debezium и координировать эволюцию Avro/Protobuf схем через Schema Registry.
- Диагностировать и устранять критические инциденты (Data Loss, Split-Brain, дротлинг облачных дисков) по JMX-метрикам и eBPF-трассировке.
- Устранять 22 основных архитектурных и инфраструктурных антипаттерна в продюсерах, консьюмерах и конфигурации брокеров.
О курсе
Для кого этот курс
Начальные требования
Этот курс ориентирован на глубокий хардкорный инжиниринг и низкоуровневый разбор систем. Чтобы обучение было максимально эффективным и вы не буксовали на базовых вещах, вам необходимы определенный бэкграунд и навыки.
Что необходимо знать и уметь до старта:
- Опыт работы с Apache Kafka в продакшене: Вы уже запускали продюсеры и консьюмеры, понимаете базовые концепции (топики, партиции, группы потребителей, оффсеты) и использовали Kafka в реальных проектах.
- Уверенное владение Java или Scala: Программа включает в себя построчный разбор исходного кода ядра Kafka. Вам нужно понимать многопоточность в JVM (блокировки, итераторы, коллекции), принципы работы Garbage Collector и Memory Management.
- Базовые знания администрирования Linux: Мы будем погружаться в системные вызовы ядра. Ожидается, что вы понимаете, как устроена работа с дисками, файловыми системами (ext4/XFS), оперативной памятью (Page Cache) и сетевым стеком.
- Понимание архитектуры распределенных систем: Вы должны быть знакомы с фундаментальными проблемами распределенных сред (теорема CAP, концепция консенсуса, сетевые задержки, split-brain).
- Концептуальное понимание Docker и Kubernetes: Будет плюсом, если вы понимаете основы оркестрации, контейнеризации и сетевого взаимодействия в K8s, так как мы будем разбирать подводные камни Strimzi Operator.
Кому курс покажется слишком сложным:
- Новичкам в коммерческой разработке или тем, кто никогда не работал с брокерами сообщений в реальных проектах.
- Специалистам, которые не умеют читать код на Java/Scala и не готовы погружаться в экосистему JVM.
Преподаватели курса
Как проходит обучение
Обучение на курсе построено вокруг глубокого погружения в теорию (инженерного хардкора) и разбора реальных Highload-кейсов. Вы будете не просто читать лекции, а исследовать внутреннее устройство систем.
Что входит в процесс обучения:
- Разборы кода
Изучаем теорию распределенных систем без «воды». Смотрим под капот брокера: разбираем построчно исходный код Scala/Java, структуры данных (Timing Wheels,Record Batch v2) и нативные интеграции (io_uring,Project Panama). - Интерактивные архитектурные тесты
Диагностические задания на выявление скрытых пробелов в знаниях. Проверка на реальных сценариях: как за 5 минут определить причину падения производительности, деградации дисков или вылета брокеров из ISR. - Разбор реальных продакшен-инцидентов
Анализ живых кейсов: от полной потери кворума KRaft до борьбы с перекосом трафика (Skewed Produce) с помощью паттернаSalting
Что вы получите
- Ультимативные хардкорные знания архитектуры Apache Kafka на уровне исходного кода Scala/Java, системных вызовов Linux и тюнинга подсистем ядра ОС.
- Готовые архитектурные паттерны для работы на сверхвысоких нагрузках (1M+ RPS): внедрение KRaft, построение Tiered Storage, шардирование с помощью Salting и реализация распределенных транзакций.
- Портфолио сложных проектов, включающее в себя кастомные lock-free партиционеры, отказоустойчивые многопоточные консьюмеры, пайплайны Change Data Capture (Debezium).