Event-Driven Microservices with Azure Cosmos DB (Change Feed) | Tural Suleymani

Tural Suleymani explains how his team designed and evolved a high-scale event-driven microservices system using Azure Cosmos DB Change Feed as the backbone for domain events, including the trade-offs and operational issues that show up under real production traffic.

Full summary based on transcript

Why event-driven systems fail at scale

The session frames common failure modes in event-driven architectures:

Using Azure Cosmos DB Change Feed for domain events

Tural Suleymani describes using Cosmos DB Change Feed as the mechanism to publish and consume domain events:

Modeling events with bounded contexts

The talk covers structuring events around bounded contexts (DDD):

Partitioning and scaling considerations

The session highlights scaling problems and how they influence data/event design:

Consistency and ordering trade-offs

The presenter discusses practical trade-offs that affect correctness and latency:

Reliable consumers, observability, and failure handling

The session includes guidance on making consumers production-ready:

Live demo: end-to-end event flow

The talk includes a repeatable demo showing an end-to-end pipeline: