Maido kurakurai da sake ƙoƙari yana da mahimmanci don ingantaccen masu karɓa RabbitMQ — yanke shawarar abin da za a yi lokacin da jigon sarrafa abin da ba ya yi nasara (sake ƙoƙari, zubar da wasiƙa, ko watsi). Maido na daidai yakan tilasta zuwa rashin hasara na abubuwa da masu karɓa da suka makale.
Matsala
When a consumer fails to process a message (bad data, downstream failure, bug):
→ requeue forever → a "poison" message blocks the queue (retried endlessly)
→ discard → message LOST
→ crash → reprocess, possibly stuck again
→ need a deliberate strategy.
Dabarun sake ƙoƙari
✓ NACK + REQUEUE → reject and requeue for retry (but limit retries — don't requeue forever)
✓ RETRY WITH BACKOFF → retry transient failures with increasing delays (e.g. via a delayed
retry queue with TTL → requeue after a delay)
✓ RETRY LIMIT → track attempts; after N failures → DEAD LETTER (don't retry forever)
✓ Distinguish TRANSIENT (retry) vs PERMANENT (dead-letter immediately) failures
