Atomic publish-with-state, deduped consumption.
Outbox Pattern and Idempotency Keys: atomic publish-with-state, deduped consumption
absorb bursts before they become outages
Outbox is operational overhead.
Outbox saves the message in the same DB transaction as the business state, then a separate process publishes it. Combined with idempotency keys at consumers, it gives a robust pipeline.
Idempotency keys live in a KV with TTL; consumers check before processing.
Change Data Capture (Debezium) reads DB WAL and publishes to Kafka — generalized outbox.
Beware long-running transactions blocking outbox publish.
Migration from sync HTTP to events.