Marc Müller

Developing ASP.NET Core Microservices with Dapr: A practical guide

What if you could build resilient microservices without writing boilerplate for messaging, state, or security? Learn how Dapr's sidecar architecture simplifies development.

Developing ASP.NET Core Microservices with Dapr: A practical guide
#1about 2 minutes

The inherent complexity of cloud-native microservice applications

A sample fast-food restaurant application demonstrates the common challenges in microservices, including service communication, resilience, and scaling.

#2about 4 minutes

Introducing Dapr as a distributed application runtime

Dapr is a CNCF-graduated project that simplifies microservice development by providing a runtime to handle common distributed system challenges.

#3about 3 minutes

Understanding Dapr's building blocks and the sidecar pattern

Dapr uses a sidecar pattern where building blocks for state, pub/sub, and service invocation run in a separate process communicating via HTTP or gRPC.

#4about 3 minutes

How Dapr components simplify state management with minimal code

Dapr's platform-agnostic components are configured via YAML and accessed through a simple client API, as shown with a state store example.

#5about 3 minutes

Gaining observability and resilience with the sidecar pattern

The sidecar pattern provides out-of-the-box observability, resilience policies like retries and circuit breakers, and security with minimal performance overhead.

#6about 2 minutes

Exploring different ways to host the Dapr runtime

Dapr can be hosted self-contained, in Docker Compose for local development, or in Kubernetes where a sidecar injector automates its deployment.

#7about 3 minutes

Configuring Dapr components and the client in ASP.NET Core

Dapr is configured in ASP.NET Core by registering the client, while components like a RabbitMQ pub/sub are defined using declarative YAML files.

#8about 5 minutes

Implementing service invocation and pub/sub patterns

Dapr simplifies service-to-service calls with built-in mTLS and resilience, and implements pub/sub using CloudEvents and simple controller attributes.

#9about 2 minutes

Using the Dapr actor model for stateful services

The Dapr actor model provides a higher-level abstraction for managing stateful objects, distributing them across instances and handling their lifecycle.

#10about 2 minutes

Evaluating the advantages and drawbacks of adopting Dapr

Dapr accelerates development and ensures portability but introduces a small network hop and uses a generic API that abstracts away provider-specific features.

Related jobs
Jobs that call for the skills explored in this talk.

Featured Partners

From learning to earning

Jobs that call for the skills explored in this talk.

DevOps .NET


Municipality of Valencia, Spain

.NET
DevOps
Agile Methodologies