Skip to content

Latest commit

 

History

History
10 lines (7 loc) · 523 Bytes

File metadata and controls

10 lines (7 loc) · 523 Bytes

exactly-once vs at-least-once delivery

this queue implements at-least-once delivery.

  • workers can crash after reserve but before ack.
  • at-least-once avoids silent data loss by re-delivering expired leases.
  • duplicates are possible, so handlers should be idempotent.

exactly-once is harder in real distributed systems because side effects usually happen outside the broker transaction boundary. this repo instead uses practical controls: enqueue idempotency keys, retries with backoff, and lease-based recovery.