Ctrl K
Backend · Senior · Теория

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

~4 мин голосом

Как подойти

Проверяют, понимает ли кандидат проблему двойной записи в базу и брокер и умеет ли собрать надёжную цепочку: transactional outbox для доставки, идемпотентный консьюмер против дублей, порядок, обработку сбоев и мониторинг. Отдельно смотрят, понимает ли он, что сквозного exactly-once не бывает.

Встречал этот вопрос на настоящем собесе?
Ответов0
Средний балл—
Сильных—
Тренировали0
Темы
Похожие вопросыСервис заказов после оплаты кладёт событие в очередь, а сервис уведомлений его читает и отправляет пользователю пуш. Какие гарантии доставки бывают, почему пользователь может получить пуш дважды или не получить вовсе, и как это чинить? И как вы гарантируете порядок событий одного заказа? MiddleЧто такое очередь сообщений, и в каких случаях обработку на бэкенде стоит вынести в асинхронную очередь? JuniorСпроектируйте сервис уведомлений: push, email и SMS, около пятидесяти миллионов уведомлений в сутки, с пиками во время маркетинговых рассылок. SeniorКак вы тестируете сервис, который обрабатывает события из очереди, например из Kafka, и как справляетесь с асинхронностью в автотестах? SeniorСервис сохраняет заказ в базу, а затем публикует событие «заказ создан» в брокер сообщений. Какие проблемы здесь возможны и как их решить? Middle

Ответь голосом

Интервьюер задаст этот вопрос и послушает. Думай вслух, проси подсказку, если нужно. Закончил — пауза или «Я ответил», через минуту здесь балл и какие пункты закрыты.

Войти, чтобы ответить

Лучше в наушниках · ~4 мин