Geef elke taak een identiteit
Gebruik een unieke identificatie en sla op of de taak in de wachtrij staat, wordt uitgevoerd, is geslaagd of wacht op beoordeling. Een crash mag niet de wetenschap wissen dat een externe actie mogelijk al heeft plaatsgevonden. Stem onzekere uitkomsten af voordat je het opnieuw probeert.
Verleen een kleine set bevoegdheden
Scheid alleen-lezen detectie van wijzigingen die gevolgen hebben voor accounts, geld of productiedata. Gebruik servicecredentials met beperkte rechten en resourcelimieten. Houd menselijke goedkeuring beschikbaar voor acties waarvan de gevolgen de routinematige bevoegdheid van de worker te boven gaan.
Beperk de herhaalpogingen
Gebruik een maximaal aantal pogingen, backoff en een dead-letter- of beoordelingspad. Respecteer snelheidslimieten van de provider. Een tijdelijke fout mag niet duizenden herhaalde verzoeken of dubbele berichten worden.
Maak het record veilig en bruikbaar
Log de bewerkings-ID, de uitkomst en relevante tijdstempels. Redigeer inloggegevens en onnodige persoonsgegevens. Houd een manier om de wachtrij te pauzeren, een token in te trekken en te herstellen van een gedeeltelijke actie zonder de hele workflow te verliezen.