Dead-letter-kø
En dead-letter-kø opbevarer beskeder, der ikke kunne behandles, så de kan undersøges og behandles igen under kontrol.
En dead-letter-kø (DLQ) er en særskilt kø til beskeder, der er taget ud af den normale behandling. Den gør ubehandlede beskeder tilgængelige for undersøgelse og kontrolleret genbehandling. Konfigurationen afgør, hvilke beskeder der ender der; ikke enhver applikationsfejl sender automatisk en besked dertil.
Frasortering kræver en vej tilbage
I et fiktivt integrationssystem indeholder besked E-81 en skemaversion, der ikke understøttes. I stedet for at blive forsøgt igen uendeligt i det normale forløb følger den den konfigurerede fejlrute. Teamet registrerer fejlårsag og beskedidentitet, så de kan spores. Efter rettelse af data eller tilpasning af consumeren kan beskeden behandles målrettet igen, mens dobbelte virkninger forhindres.
I RabbitMQ er Dead-Letter Exchange (DLX) det fordelingspunkt, der sender beskederne videre til tilknyttede køer. Det er ikke selve DLQ’en. Årsager kan være afvisning uden genindsættelse, udløbet beskedgyldighed eller konfigurerede grænser. Routing og passende købindinger skal være sat op.
Overvågning, adgangsrettigheder, opbevaring og genbehandlingsprocedure hører med. DLQ’en er hverken en afsluttet opgave eller en automatisk reparation. Videresendelsen garanterer heller ikke mod tab: RabbitMQs standardmæssige dead-lettering kan miste beskeder, hvis målkøen ikke er tilgængelig.
Kilder
Relaterede begreber
- MeddelelseskvitteringEn meddelelseskvittering fortæller brokeren, at en levering er modtaget eller behandlet efter den aftalte regel.
- Transaktionel inboxEn transaktionel inbox bruger varige meddelelsesregistreringer til at beskytte lokal behandling mod dobbelte leveringer.
- Retry-strategiEn retry-strategi fastlægger, hvilke fejl der prøves igen, med hvilke pauser og indtil hvilken grænse.
- Server-Sent EventsServer-Sent Events sender tekstmeddelelser fra server til klient via HTTP, eksempelvis om en baggrundsopgaves fremdrift.
- ETagEt ETag identificerer en bestemt repræsentationsversion af en HTTP-ressource og understøtter betingede opslag eller ændringer.
- Cross-Origin Resource SharingCORS styrer browserens adgang til svar fra en anden origin. Det erstatter hverken login til API’et eller kontrol af rettigheder.
Dit projekt med ASES
Beskriv dit projekt for os. Vi vender tilbage med en første vurdering.