Dead-letterqueue
Een dead-letterqueue bewaart apart gezette berichten voor onderzoek en gecontroleerde herverwerking.
Een dead-letterqueue (DLQ) is een aparte wachtrij voor berichten die uit de normale verwerking zijn gehaald. Ze maakt onverwerkte berichten beschikbaar voor onderzoek en gecontroleerde herverwerking. De configuratie bepaalt welke berichten er terechtkomen; niet elke applicatiefout stuurt een bericht er automatisch heen.
Apart zetten vraagt om een herstelroute
In een fictief integratiesysteem bevat bericht E-81 een niet-ondersteunde schemaversie. In plaats van eindeloos opnieuw te worden geprobeerd in de normale stroom volgt het de ingestelde foutroute. Het team legt foutreden en berichtidentiteit traceerbaar vast. Na correctie van de gegevens of aanpassing van de consumer kan het team dat bericht gericht opnieuw verwerken en dubbele effecten voorkomen.
In RabbitMQ is de Dead-Letter Exchange (DLX) het routeringspunt dat deze berichten naar gekoppelde wachtrijen doorstuurt. Het is niet zelf de DLQ. Redenen kunnen afwijzing zonder opnieuw in de rij plaatsen, verlopen berichtgeldigheid of ingestelde grenzen zijn. Routering en passende koppelingen moeten worden ingericht.
Ook bewaking, toegangsrechten, bewaartermijn en een herverwerkingsprocedure zijn nodig. De DLQ is geen voltooide opdracht of automatische reparatie. Doorsturen garandeert evenmin verliesvrijheid: standaard dead-lettering in RabbitMQ kan berichten verliezen wanneer de doelwachtrij niet beschikbaar is.
Bronnen
Verwante begrippen
- BerichtbevestigingEen berichtbevestiging meldt aan de broker dat een aflevering volgens de afgesproken regel is ontvangen of verwerkt.
- Transactionele inboxEen transactionele inbox gebruikt duurzame berichtregistraties om lokale verwerking tegen dubbele afleveringen te beschermen.
- RetrystrategieEen retrystrategie bepaalt welke fouten opnieuw worden geprobeerd, met welke pauzes en tot welke grens.
- Server-Sent EventsServer-Sent Events verstuurt tekstmeldingen van server naar client via HTTP, bijvoorbeeld over de voortgang van een achtergrondtaak.
- ETagEen ETag identificeert een bepaalde representatieversie van een HTTP-resource en ondersteunt voorwaardelijk lezen of wijzigen.
- Cross-Origin Resource SharingCORS regelt browsertoegang tot antwoorden van een andere origin. Het vervangt geen API-aanmelding of controle van toegangsrechten.
Uw project met ASES
Beschrijf ons uw project. We nemen contact met u op met een eerste inschatting.