Вступить в клуб →
средняявопросМикросервисы и обмен событиями

Событие «заказ доставлен» обработано раньше, чем «заказ оплачен»

Сервис заказов публикует изменения статуса в топик Kafka с шестью партициями, сообщения отправляются без ключа. Потребитель обновляет статус в своей базе. Иногда заказ оказывается в статусе «оплачен» после того, как уже был «доставлен».

Что исправит проблему?

  • Отправлять события с ключом order_id — порядок в Kafka держится в партиции
  • Уменьшить число потребителей в группе до одного на весь топик
  • Сортировать события по времени отправки на стороне потребителя
  • Увеличить число партиций, чтобы события не ждали в очереди

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела