Dead Letter Queue (DLQ) при обработке сообщений в Go.

Ответ

Сообщения, которые не удалось обработать после N попыток, отправляют в DLQ для разбора и ручной обработки. В Go: при ошибке обработки не коммитить offset (или nack); после N ретраев публиковать сообщение в отдельный топик/очередь (DLQ). Отдельный воркер или оператор обрабатывает DLQ (логи, алерты, повторная публикация после исправления).

if err := process(msg); err != nil {
    if attempt >= maxAttempts {
        dlqProducer.Produce(ctx, msg)
        return
    }
    return err
}
consumer.Commit(msg)
🧠Квиз 🏆Лидеры 🎯Собесед. 📖Вопросы 📚База зн.