Выбор ответа Middle Очереди, логи и микросервисы обновлено
Порядок сообщений в Kafka
Вопрос
В каком случае Kafka гарантирует порядок сообщений?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Внутри одной партиции, поэтому заказ шлют с одним ключом. Топик делится на партиции, и порядок есть только внутри партиции.
Варианты ответа
- Во всём топике, если у продюсера включена идемпотентность
- Не гарантирует: порядок теряется при любой репликации
- Внутри одной партиции, поэтому заказ шлют с одним ключомправильный ответ
- При одном потребителе в группе, независимо от числа партиций
Разбор
Топик делится на партиции, и порядок есть только внутри партиции. Сообщения с одинаковым ключом попадают в одну партицию, поэтому created → paid → shipped одного заказа придут по порядку, а между разными заказами порядок не определён. Идемпотентный продюсер убирает дубли, но порядка между партициями не даёт, как и один потребитель. Тестовый сценарий: события одного заказа пришли в обратном порядке, сервис должен это пережить.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.