Training [Modern distributed systems with gRPC in ASP.NET Core 5.0]

Dates: June 5-6 [2 days of learning, 8 hours per day] • Language: English

Mark Rendle

Trainer: Mark Rendle

Mark has over 30 years of experience as a software developer, consultant and coach, with 20 of those spent working with .NET. He is a popular speaker at international conferences and user groups, a Microsoft MVP, and a three-time PubConf Champion. He is also the author of the Microsoft eBook "gRPC for WCF Developers".

Overview:

gRPC is a high-performance, cross-platform framework for building distributed systems and APIs. It’s an ideal choice for communication between microservices, internal network applications, or mobile devices and services. With the release of ASP.NET Core 5.0, Microsoft has added first-class support for creating gRPC services. This workshop will help you get started building, deploying and managing gRPC servers and clients on multiple platforms.

Note: although the workshop uses .NET 5.0, almost everything also applies to the .NET Core 3.1 LTS release.

Day 1: Building gRPC applications in ASP.NET Core

  • Introduction to Protobuf and gRPC
  • gRPC in ASP.NET Core 5.0
  • gRPC servers
  • gRPC clients
  • Request/Reply services
  • Streaming services
  • Server-streaming
  • Client-streaming
  • Bidirectional streaming
  • Migrating WCF applications to gRPC

Day 2: Security, Deployment and Observability

  • gRPC’s security model
  • Channel authentication with TLS
  • Call authentication with tokens
  • Running gRPC services in production
  • Self-hosted
  • Docker
  • Kubernetes
  • Service mesh (using Linkerd as an example)
  • Observability and monitoring
  • gRPC Health checks
  • Distributed tracing
  • Requirements

TIME & SCHEDULE:

This remote workshop is split over two days. The workshop will be running from 10:00 AM (EET) to 5:00 PM (EET) on Saturday and Sunday.


  • Sat, June 5, 10:00 AM - 5:00 PM

  • Sun, June 6, 10:00 AM - 5:00 PM

Technologies covered:

ASP.NET Core 5.0, gRPC, Protobuf, Visual Studio, .NET CLI, Docker, Kubernetes, services meshes, monitoring, distributed tracing

Requirements:

Attendees will be expected to be familiar with .NET and C#, and bring a computer with the latest .NET 5.0 SDK and an IDE (VS2019, VS Code or Rider). For day two a local Docker installation that supports Kubernetes is strongly recommended (e.g. Docker Desktop for Windows or Mac).