Разделите временный сбой и неисправимое сообщение. После ограниченных retries с backoff отправьте проблемное событие в DLQ или quarantine с причиной и возможностью управляемого повтора.
Что делать с событием, которое постоянно падает при публикации или обработке?
Разделите временный сбой и неисправимое сообщение. После ограниченных retries с backoff отправьте проблемное событие в DLQ или quarantine с причиной и возможностью управляемого повтора.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Разделите временный сбой и неисправимое сообщение. После ограниченных retries с backoff отправьте проблемное событие в DLQ или quarantine с причиной и возможностью управляемого повтора.
При публикации храните недоставленное событие устойчиво, например в outbox; при обработке не блокируйте бесконечно всю очередь одним poison message. Уведомляйте ответственных и сохраняйте идентификаторы, но не секретные payload в открытых логах. Повтор после исправления должен быть идемпотентным и учитывать порядок событий.