На собеседовании по Kafka вопросы могут поджидать кого угодно — бэкенд-разработчика, data-инженера, девопса или профильного специалиста по администрированию кластеров. Кандидатов проверяют на глубинное понимание системы, а не просто на знание терминов.
Мы собрали несколько каверзных, но важных вопросов, которые встречаются на интервью. Проверьте себя, на сколько из них вы можете сходу дать ответ?
▫️ Вопрос: Какой основной недостаток может быть у большого размера batch.size на продюсере?
Ответ: Если размер сообщений значительно меньше batch.size, а параметр linger.ms выставлен достаточно большим, это может привести к долгой отправке сообщений. Продюсер будет ждать либо заполнения батча, либо таймаута.
▫️ Вопрос: Из-за чего возможна ситуация, когда консьюмер подключается, начинает читать данные, но при этом оффсет и лаг не меняются?
Ответ: Часто это возникает, если размер сообщения в топике больше, чем fetch.bytes, выставленный в консьюмере. Или если консьюмер вычитал большую пачку, но не успел её закоммитить до истечения session.timeout.ms и max.poll.interval.ms.
▫️ Вопрос: В чём отличия между параметрами ISR и min.insync.replicas для топика? И что будет, если не выполняется min.insync.replicas?
Ответ: ISR — это текущее количество реплик в синхронизации. min.insync.replicas — это минимальное количество реплик ISR, необходимое для возможности записи. Если ISR станет меньше — запись будет невозможна, и продюсер получит исключение NotEnoughReplicasException.
▫️ Вопрос: Как вычитывать только новые сообщения, пришедшие в топик, а не все каждый раз?
Ответ: Подписаться на топик с использованием консьюмер-группы. Группа будет отслеживать оффсеты для каждого партишена.
▫️ Вопрос: Имеет ли значение для Kafka, что содержится в сообщениях?
Ответ: Нет. Для Kafka любое сообщение — просто набор байтов. Если выполняются условия по размеру и сериализации, сообщения будут записаны. Вся семантическая нагрузка и валидация — на стороне продюсеров и консьюмеров.
Хотите больше подобных знаний не только для собеса, но и для практического применения?
Приходите на курс «Apache Kafka для разработчиков и аналитиков», чтобы изучить архитектуру и понять логику работы с Kafka на примере бизнес-кейсов.
На курсе есть три тарифа:
Выберите тот, который подходит именно вам. Подробности — по ссылке
Мы собрали несколько каверзных, но важных вопросов, которые встречаются на интервью. Проверьте себя, на сколько из них вы можете сходу дать ответ?
▫️ Вопрос: Какой основной недостаток может быть у большого размера batch.size на продюсере?
Ответ: Если размер сообщений значительно меньше batch.size, а параметр linger.ms выставлен достаточно большим, это может привести к долгой отправке сообщений. Продюсер будет ждать либо заполнения батча, либо таймаута.
▫️ Вопрос: Из-за чего возможна ситуация, когда консьюмер подключается, начинает читать данные, но при этом оффсет и лаг не меняются?
Ответ: Часто это возникает, если размер сообщения в топике больше, чем fetch.bytes, выставленный в консьюмере. Или если консьюмер вычитал большую пачку, но не успел её закоммитить до истечения session.timeout.ms и max.poll.interval.ms.
▫️ Вопрос: В чём отличия между параметрами ISR и min.insync.replicas для топика? И что будет, если не выполняется min.insync.replicas?
Ответ: ISR — это текущее количество реплик в синхронизации. min.insync.replicas — это минимальное количество реплик ISR, необходимое для возможности записи. Если ISR станет меньше — запись будет невозможна, и продюсер получит исключение NotEnoughReplicasException.
▫️ Вопрос: Как вычитывать только новые сообщения, пришедшие в топик, а не все каждый раз?
Ответ: Подписаться на топик с использованием консьюмер-группы. Группа будет отслеживать оффсеты для каждого партишена.
▫️ Вопрос: Имеет ли значение для Kafka, что содержится в сообщениях?
Ответ: Нет. Для Kafka любое сообщение — просто набор байтов. Если выполняются условия по размеру и сериализации, сообщения будут записаны. Вся семантическая нагрузка и валидация — на стороне продюсеров и консьюмеров.
Хотите больше подобных знаний не только для собеса, но и для практического применения?
Приходите на курс «Apache Kafka для разработчиков и аналитиков», чтобы изучить архитектуру и понять логику работы с Kafka на примере бизнес-кейсов.
На курсе есть три тарифа:
- Соло — доступ к видеолекциям, стенд для практики, свидетельство о прослушивании
- Стандарт — доступ к видеолекциям, стенд для практики, ревью финального проекта и номерной сертификат
- Эксперт — доступ к видеолекциям, стенд для практики, проверка практики и обратная связь от эксперта, ревью финального проекта и номерной сертификат
Выберите тот, который подходит именно вам. Подробности — по ссылке