Berichtbevestiging
Een berichtbevestiging meldt aan de broker dat een aflevering volgens de afgesproken regel is ontvangen of verwerkt.
Een berichtbevestiging vertelt een message broker wanneer die een aflevering als afgehandeld mag beschouwen. De richting van de bevestiging en het moment waarop de toepassing haar verstuurt, zijn bepalend.
In RabbitMQ bevestigt een consumer zijn verwerking aan de broker met een handmatige positieve bevestiging zoals basic.ack. Een publisher confirm bevestigt daarentegen aan de afzender de acceptatie aan de kant van de broker. Dat bewijst nog niet dat de ontvangende toepassing haar taak heeft afgerond.
Tussen opslaan en bevestigen
In een fictieve stroom verwerkt een dienst bericht E-42, slaat de vereiste databasewijziging duurzaam op en bevestigt daarna. Bevestigt de dienst eerst en crasht hij vóór het opslaan, dan kan de broker de aflevering al als afgehandeld beschouwen terwijl de wijziging ontbreekt.
Ook de omgekeerde situatie telt: als de wijziging is opgeslagen maar de bevestiging verloren gaat, kan het bericht opnieuw worden afgeleverd. Bij handmatige bevestigingen zet RabbitMQ onbevestigde berichten terug in de wachtrij na het sluiten van een verbinding of kanaal. De dienst moet herhaling daarom afhandelen zonder het bedrijfsresultaat twee keer te veroorzaken.
Automatische bevestiging in RabbitMQ wacht niet totdat het werk van de toepassing klaar is. De gekozen modus moet passen bij de gewenste bescherming tegen verloren werk. Een consumerbevestiging bewijst ook niet dat alle volgende diensten of een externe melding succesvol waren.
Bronnen
Verwante begrippen
- Message queueEen message queue buffert berichten totdat een consument ze voor verwerking ophaalt.
- Transactionele inboxEen transactionele inbox gebruikt duurzame berichtregistraties om lokale verwerking tegen dubbele afleveringen te beschermen.
- Jitter bij herhaalpogingenRetry jitter varieert wachttijden willekeurig om herhaalpogingen te spreiden en gelijktijdige aanvragen van veel clients te verminderen.
- TestklantomgevingEen logisch afgebakende klantomgeving van een multitenant-toepassing, ingericht voor controles.
- Webhook opnieuw versturenWebhook-replay verstuurt een melding opnieuw. Gericht herstel en aanvallen door herhaling vragen om verschillende controles.
- IdempotentiesleutelEen idempotentiesleutel identificeert herhalingen van hetzelfde bedoelde verzoek. Bereik, bewaartermijn en API-regels bepalen de werking.
Artikelen over dit onderwerp








Koppelingen & integratie met ASES
ERP, CRM en webshop netjes gekoppeld

