Why it matters

Exactly-once shapes correctness. Understanding shapes design.

Advertisement

The architecture

At-least-once delivery + idempotent processing = effectively-once.

Transactional outbox for durability.

Exactly-once via idempotencyAt-least-once brokerdeliveryIdempotent processingapp-sideEffectively-onceoutcomeKafka transactions + transactional outbox pattern for effectively-once
Exactly-once.
Advertisement

How it works end to end

Idempotency + dedup.

Transactional outbox pattern.

Kafka transactions API.

Two-phase commit alternative.