Выбор ответа Middle Kafka в Spring обновлено

Выбор ключа сообщения

Вопрос

События статусов заказа (создан, оплачен, отправлен) должны обрабатываться строго по порядку для каждого заказа. Какой ключ выбрать?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: id заказа. Одинаковый ключ даёт одну партицию, внутри неё порядок сохраняется.

Варианты ответа

  1. Случайный UUID на каждое событие
  2. Тип события
  3. Без ключа, Kafka сохранит порядок сама
  4. id заказаправильный ответ

Разбор

Одинаковый ключ даёт одну партицию, внутри неё порядок сохраняется. Случайный ключ или его отсутствие раскидают события заказа по партициям. Ключ по типу события сложит все «оплачен» в одну партицию: порядок по заказу всё равно нарушится, и нагрузка распределится плохо.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме