Этап 7 из 15 · ≈ 12 ч

Kafka

Основа с Middle

Топики, партиции, смещения, группы потребителей, репликация и эксплуатация.

Что важно знать

  • Лог вместо очереди: сообщения хранятся заданное время, потребители читают со своего смещения и могут перечитать.
  • Партиция — единица параллелизма и порядка; ключ определяет партицию.
  • Группа потребителей: каждая партиция — одному потребителю группы.
  • Продюсер: acks=all и идемпотентность против потерь и дублей.
  • Коммит смещений после обработки — at-least-once.
  • Репликация: лидер и реплики, ISR, min.insync.replicas.
  • Kafka 4.0 работает без ZooKeeper (KRaft).

Критерии освоения

Middle ≈ 12 ч

  • Объясняет топики, партиции, смещения и группы потребителей
  • Настраивает продюсер (acks, идемпотентность) и потребитель (коммит смещений) под нужные гарантии
  • Объясняет порядок сообщений в пределах партиции и выбор ключа

Практика. Поднять Kafka в Docker, сделать продюсер и группу из трёх потребителей, проверить перебалансировку и повторную обработку при падении.

Senior ≈ 8 ч

  • Рассчитывает число партиций и следит за отставанием потребителей
  • Объясняет репликацию, ISR и поведение при отказе брокера

Практика. Провести нагрузочный тест с отказом брокера и измерить потери и дубли при разных настройках acks и min.insync.replicas.

Проверка знаний

Войдите, чтобы пройти тест: сданный тест отмечает тему пройденной на карте и в ИПР.

Вопросы с собеседований

Смотреть все
Что такое topic, partition и offset в Kafka?Junior

Топик — именованный поток сообщений. Партиция — упорядоченный журнал, часть топика. Offset — номер сообщения внутри партиции.

Полный разбор
Как consumer group в Kafka масштабирует потребление?Middle

Партиции топика делятся между участниками группы: каждая партиция в группе читается ровно одним потребителем. Добавили потребителя — партиции перераспределились.

Полный разбор
Что произойдёт, если потребителей в consumer group больше, чем партиций в топике?Senior

Лишние потребители простаивают: одна партиция в группе читается только одним потребителем, поэтому параллелизм группы не больше числа партиций.

Полный разбор
Что такое offset в Kafka?Junior

Offset — порядковый номер записи в партиции. По нему потребитель знает, что уже прочитал: группа фиксирует offset в служебном топике __consumer_offsets.

Полный разбор
Какая гарантия порядка в Kafka является базовой?Middle

Kafka гарантирует порядок только внутри партиции. Чтобы события одного заказа шли по порядку, у них должен быть одинаковый ключ (order_id) — тогда они попадут в одну партицию.

Полный разбор
Что означают acks=0, acks=1 и acks=all у Kafka producer?Senior

acks=0 — не ждём подтверждения: максимум скорости, потери возможны. acks=1 — ждём запись лидером: потеря при падении лидера до репликации. acks=all — ждём все синхронные реплики (ISR): надёжно.

Полный разбор

Разборы темы

← Вся карта «Backend-разработчик»

Партнёр платформы

Разбор собеседования с sotto

После собеседования sotto разбирает разговор: оценка, каждый вопрос — хорошо, частично или слабо, чего не хватило в ответе и над чем поработать к следующему разу. Первые 30 минут бесплатно.

Разбор собеседования