Пример: после подтверждённого зачисления денег нужно уведомить клиента. Изменение статуса зачисления и событие PaymentCompleted сохраняются в одной транзакции БД через outbox.
Приведи конкретный бизнесовый пример использования outbox в финтехе.
Пример: после подтверждённого зачисления денег нужно уведомить клиента. Изменение статуса зачисления и событие PaymentCompleted сохраняются в одной транзакции БД через outbox.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Пример: после подтверждённого зачисления денег нужно уведомить клиента. Изменение статуса зачисления и событие PaymentCompleted сохраняются в одной транзакции БД через outbox.
Relay читает outbox и отправляет событие в брокер; сервис уведомлений обрабатывает его идемпотентно по event ID. При сбое между отправкой и отметкой возможен повтор, но не теряется сам факт необходимости публикации. Outbox не подтверждает внешний банковский перевод: его результат должен быть установлен отдельным надёжным механизмом.