Skip to main content

Event-Driven Distributed Apps on Azure: Aspire, Dapr & Durable Execution

Class Details

4 Days, last updated Oct, 2026
Azure Aspire Dapr Event-Driven Architecture Durable Task Advanced

This four-day private online class is for Azure developers and software architects who design and build event-driven distributed applications on .NET 10. It starts where AI-200 (formerly AZ-204) stops. The exam names the building blocks, this class implements the patterns on top of them, from the transactional outbox and idempotent consumers to event sourcing, durable workflows and sagas.

Every topic is taught on one domain, Contoso Logistics, a last-mile parcel delivery company. Shipments are booked, vans report their position, scanners report every parcel, and an operations console shows the network live.

Day one designs the system with event storming, commands, events and reliability patterns, models it with Aspire and hosts it on Container Apps and AKS. Day two connects the services with Service Bus, Event Grid and Event Hubs. Day three stores the history in Cosmos DB with outbox, change feed projections, CQRS and event versioning, then makes the services portable with Dapr.

Day four makes long-running processes survive failures with the Durable Task Scheduler, Durable Functions, Dapr Workflow and saga orchestration. It finishes with AI agents that take part in the event flow like any other service.

Audience

  • Azure developers who build distributed and event-driven applications
  • Software architects who design microservices on Azure

Prerequisites

  • C# and .NET experience
  • Azure development at AI-200 (formerly AZ-204) level
  • Docker Desktop
  • An Azure subscription
  • A GitHub account

Curriculum

Module 1: Designing Event-Driven Distributed Systems

  • Modular Monolith vs. Microservices
  • Sync vs. Async: Commands & Events
  • Event Storming: Find Service Boundaries
  • Event Types: Domain, Integration, CloudEvents
  • Reliability Patterns: Outbox, Saga, Idempotency
  • Azure Messaging: Pick the Broker

Module 2: Building Distributed Apps with Aspire

  • Aspire AppHost: Model the System
  • ServiceDefaults: Telemetry, Resilience, Discovery
  • Aspire Integrations: Hosting & Client
  • Aspire Dashboard: Traces Across Services
  • Polyglot AppHost: Angular & Python
  • Aspire Testing: Distributed Integration Tests

Module 3: Hosting on Container Apps & AKS

  • Aspire Deploy: ACR & Container Apps
  • Key Vault & App Configuration
  • Revisions: Traffic Splitting & Draining
  • AKS: Aspire-Generated Kubernetes Manifests
  • Application Insights: Traces & KQL

Module 4: Reliable Messaging with Service Bus

  • Topic Subscriptions: SQL Filters
  • Azure Functions: Service Bus Triggers
  • Competing Consumers: KEDA Scale Rules
  • Sessions: Ordered Message Processing
  • Dead-Letter Queues: Poison Messages
  • Idempotent Consumers: Duplicate Detection

Module 5: Events & Streams with Event Grid & Event Hubs

  • Event Grid: Custom Topics & Subscriptions
  • Event Grid: Filters, Retries, Dead-Letter
  • Event Grid Namespaces: Pull Delivery
  • Event Hubs: Partitions & Checkpoints
  • Event Hubs: Kafka-Compatible Streaming
  • SignalR Service: Push to Browsers

Module 6: Event Sourcing & CQRS with Cosmos DB

  • Transactional Outbox: Atomic Publishing
  • Change Feed Processor: Projections
  • CQRS: Separate Writes from Reads
  • Read Models: Indexing, RUs, Consistency
  • Managed Redis: Change-Feed Cache Invalidation
  • Event Store: Aggregates & Snapshots
  • Event Versioning: Evolve Schemas Safely

Module 7: Dapr Building Blocks for Portable Services

  • Dapr Sidecar: Run with Aspire
  • Service Invocation: mTLS & Retries
  • State Stores: ETags & Concurrency
  • Pub/Sub: Swap Brokers via Components
  • Resiliency Policies: Retries & Breakers
  • Dapr Actors: Virtual Actor Model
  • Managed Dapr: Container Apps vs. AKS

Module 8: Durable Execution, Workflows & Sagas

  • Durable Execution: Replay & Determinism
  • Durable Task Scheduler: Managed Backend
  • Durable Functions: Orchestrations & Entities
  • Durable Timers: External Events & Approvals
  • Durable Task SDK: KEDA-Scaled Workers
  • Dapr Workflow: Portable Orchestrations
  • Saga Orchestration: Compensating Activities

Module 9: AI Agents in Event-Driven Systems

  • Microsoft.Extensions.AI: Foundry Model Client
  • Agent Subscribers: React to Events
  • LLM Calls: Durable Activities
  • Rate Limits: Priority Queues & KEDA
  • Vector Search: Change Feed Embeddings
  • Agent Choreography: Events vs. A2A

Class Logistics

Day rate 1.250 EUR · online only, +20% VAT, reverse charge possible
Material Labs, decks · 35 EUR per day per participant
Max Users 16
Lab Requirements Docker Desktop & Azure Subscription
AI Harness: Bring your own