Skip to content

Event-driven architecture

Intent

Integrate services by publishing and consuming events rather than synchronous request/response calls.

Use when

  • You can tolerate eventual consistency and want to decouple services temporally.
  • You have fan-out consumers (many subscribers to the same business facts).

Avoid / watch-outs

  • Avoid treating events like RPC (“must be immediate and exactly-once”); design for retries and duplicates.
  • Define contracts and schema evolution; uncontrolled event changes break consumers.

Skill mapping

  • architecture: decide orchestration vs choreography; choose outbox vs CDC.
  • spec: event contracts, compatibility rules, and NFRs (ordering, durability).
  • resilience: idempotent consumption, DLQs/quarantine, bounded retries.
  • observability: lag metrics, correlation IDs, and message-type span attributes.