Kolejka martwych wiadomości (DLQ)
Osobna kolejka, do której trafiają wiadomości, których nie udało się przetworzyć po określonej liczbie prób. Zamiast blokować kolejkę w nieskończoność, „zatruta” wiadomość ląduje w DLQ do analizy i ręcznej lub automatycznej obsługi.
Problem: wiadomość, która konsekwentnie wywala konsumenta (złe dane, błąd w kodzie), inaczej zablokowałaby kolejkę albo krążyłaby bez końca (burza ponowień). Po X nieudanych próbach system „uśmierca” wiadomość → parking, na którym nikomu nie przeszkadza. Zastosowanie: sprawdzić, dlaczego się nie udało, naprawić błąd i odtworzyć (redrive) wiadomość. Standard w SQS, RabbitMQ, Kafce (przez własne wzorce) i Azure Service Bus. Dobra praktyka: alarmować o rozmiarze DLQ (rosnąca DLQ = coś jest zepsute) oraz zapisywać przyczynę i metadane błędu. Różni się od zwykłego ponawiania: DLQ jest stacją końcową po wyczerpaniu prób. Kluczowa w odpornych systemach opartych na komunikatach i mikrousługach.