Kafka Integration with Idempotent Consumers
Use this guide when migrating event workers from Node to Oxidite.
Design rules
- Process messages at-least-once.
- Make handlers idempotent.
- Commit offsets only after durable side effects.
Idempotency techniques
- Dedup table keyed by
event_idor producer idempotency key. - Transactional write pattern: business change + dedup marker together.
- Ignore duplicates as successful no-op.
Recommended worker flow
- Receive message.
- Validate schema/version.
- Begin DB transaction.
- Check dedup marker.
- Apply side effects if first-seen.
- Persist dedup marker.
- Commit transaction.
- Commit Kafka offset.
Failure handling
- Retry transient DB/network errors.
- Dead-letter poison messages with context.
- Expose lag/retry/dead-letter metrics.