Обрабатывайте событие идемпотентно и храните уникальный идентификатор события вместе с его источником.
Внешняя система прислала одно и то же событие несколько раз. Как решать эту проблему?
Обрабатывайте событие идемпотентно и храните уникальный идентификатор события вместе с его источником.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Обрабатывайте событие идемпотентно и храните уникальный идентификатор события вместе с его источником.
Уникальное ограничение в БД защищает от одновременной обработки дублей, а отметку об обработке нужно фиксировать в одной транзакции с изменением бизнес-данных. Повторный запрос не должен повторять списание, отправку или другое действие.