A collection of awesome training series, articles, videos, books, courses, sample projects, and tools for Microservices in .NET
Training Series
Building Microservices On .NET Core
January 2019-September 2019
- Building Microservices On .NET Core – Part 1 The Plan
- Building Microservices On .NET Core – Part 2 Shaping microservice internal architecture with CQRS and MediatR
- Building Microservices On .NET Core – Part 3 Service Discovery with Eureka
- Building Microservices On .NET Core – Part 4 Building API Gateways With Ocelot
- Building Microservices On .NET Core – Part 5 Marten An Ideal Repository For Your Domain Aggregates
- Building Microservices On .NET Core – Part 6 Real time server client communication with SignalR and RabbitMQ
- Building Microservices On .NET Core – Part 7 Transactional Outbox with RabbitMQ
Repository : https://github.com/asc-lab/dotnetcore-microservices-poc
Building microservices through Event Driven Architecture
January 2019-
- Building microservices through Event Driven Architecture part1 : application specific business rules
- Building microservices through Event Driven Architecture part2 : domain objects and business rules
- Building microservices through Event Driven Architecture part3: Presenters, Views, and Controllers
- Building microservices through Event Driven Architecture part4: repositories
- Building microservices through Event Driven Architecture part5: dockerization (Web Api Core and SQL Server Linux)
- Building microservices through Event Driven Architecture part6: Implementing EventSourcing on Domain Model
- Building microservices through Event Driven Architecture part7: Implementing EventSourcing on Repositories
- Building microservices through Event Driven Architecture part8: Implementing EventSourcing on Application
- Building microservices through Event Driven Architecture part09: Handling updates
- Building microservices through Event Driven Architecture part10: Run Unit tests inside a docker container
- Building microservices through Event Driven Architecture part11: Continuous Integration
- Building microservices through Event Driven Architecture part12 : Produce events to Apache KAFKA
Repository : https://github.com/logcorner/LogCorner.EduSync.Speech.Command/ https://github.com/logcorner/LogCorner.EduSync.Speech.ServiceBus
Building API Gateway Using Ocelot In ASP.NET Core
November 2017-August 2019
- Building API Gateway Using Ocelot In ASP.NET Core
- Part Two – Building API Gateway Using Ocelot In ASP.NET Core – Authentication
- Part Three -Building API Gateway Using Ocelot In ASP.NET Core – Logging
- Part Four – Building API Gateway Using Ocelot In ASP.NET Core – Rate Limiting
- Building API Gateway Using Ocelot In ASP.NET Core – QoS (Quality of Service)
- Building API Gateway Using Ocelot In ASP.NET Core – Load Balancing
- Building API Gateway Using Ocelot In ASP.NET Core – Service Discovery (Eureka)
- Building API Gateway Using Ocelot In ASP.NET Core – Service Discovery (Consul)
- Building API Gateway Using Ocelot In ASP.NET Core – Configuration (Consul)
Repository : https://github.com/catcherwong-archive/APIGatewayDemo
Distributed .NET Core (DShop)
December 2018-April 2019
- Distributed .NET Core (DShop) – Teaser
- Distributed .NET Core (DShop) – Episode 1 [Intro, HTTP requests flow, Infrastructure with Docker]
- Distributed .NET Core (DShop) – Episode 2 [CQRS – Write side, Discounts service, MongoDB repository]
- Distributed .NET Core (DShop) – Episode 3 [Subscribing RabbitMQ messages, API gateway]
- Distributed .NET Core (DShop) – Episode 4 [Asynchronous microservices integration via events]
- Distributed .NET Core (DShop) – Episode 5 [CQRS – Read side, Internal HTTP communication]
- Distributed .NET Core (DShop) – Episode 6 [Service discovery & Load balancing with Consul + Fabio]
- Distributed .NET Core (DShop) – Episode 7 [Handling asynchronous requests, SignalR, Polly]
- Distributed .NET Core (DShop) – Episode 8 [Distributed transactions, 2PC, Event Choreography, Saga]
- Distributed .NET Core (DShop) – Episode 9 [Vault secrets, Seq logging, Jaeger distributed tracing]
- Distributed .NET Core (DShop) – Episode 10 [Metrics with AppMetrics, InfluxDB, Prometheus, Grafana]
- Distributed .NET Core (DShop) – Episode 11 [Travis CI pipelines, custom MyGet feeds]
- Distributed .NET Core (DShop) – Episode 12 [Docker basics, Docker Hub, docker-compose]
- Distributed .NET Core (DShop) – Episode 13 [Integration tests with xUnit, Web API, Mongo, RabbitMQ]
- Distributed .NET Core (DShop) – Episode 14 [Consumer-driven contract testing with Pact]
- Distributed .NET Core (DShop) – Episode 15 [Orchestration with Portainer, Kubernetes and Rancher]
Repository : https://github.com/devmentors/DNC-DShop
Microservices .NET
May 2020-August 2020
- Meet Pacco & Microservices .NET!
- CQRS – reserving a resource
- Inbox & Outbox pattern – transactional message processing
- API Gateway with Ocelot and RabbitMQ
- Contract testing with Pact.io
- Distributed Tracing with Jaeger
- Dynamic Credentials with Vault
- DevMentors Live #0 – “Microservices .NET” Q&A, future plans etc…
- Sidecar pattern + custom reverse proxy + k8s
Repository : https://github.com/devmentors/Pacco
.NET Conf: Focus on Microservices
August 2020
- Welcome to .NET Conf: Focus on Microservices
- Why You Should Care About Microservices
- Stay Sharp
- A Journey into .NET Microservices with Steeltoe
- Orleans at Microsoft
- Adding a Little DAPR to Your .NET Microservices
- Developing and Deploying Microservices with ‘Tye’
- Beyond REST and RPC: Asynchronous Eventing and Messaging Patterns
- The Intersection of Microservices, Domain-Driven Design and Entity Framework Core
- Build High-performance Microservices with gRPC and .NET
- DevOps, Waffles, and Superheroes – Oh My!
- API Communication in Microservices with Azure API Management and Azure Functions
- Evolving .NET Framework Monoliths with .NET 5 and Kubernetes
- Migrating .NET Framework Web Apps to Azure
- Building & Debugging Microservices faster using Kubernetes and Visual Studio
- Workshop Module 1: Introducing Microservices
- Workshop Module 2: Modeling and Architecting Microservices
- Workshop Module 3: Microservice Communication
- Workshop Module 4: Deploying Microservices to Kubernetes
- Workshop Module 5: Deploying Service Mesh to Kubernetes
- Workshop Module 6: Distributed Data
Repository : https://github.com/dotnet-presentations/dotNETConf/tree/master/2020/FocusOnMicroservices
Microservices with .NET Core and Docker
March 2020-June 2020
- Microservices with .NET Core and Docker Episode 1
- Microservices with .NET Core and Docker Episode 02
- Microservices with .NET Core and Docker Episode 03 – Serilog and Seq
- Microservices with .NET Core and Docker Episode 04 – Bandwidth Tester with Serilog and Seq
- Microservices with .NET Core and Docker Episode 05 – PostgreSQL Setup
- Microservices with .Net Core and Docker Episode 06 – Corona Virus Dashboard Part 01
- Microservices with .Net Core and Docker Episode 07 – Corona Virus Dashboard Part 02
- DockerMonitoring with Grafana and .NET Core
Repository : https://github.com/DotNetMax/DockerMonitoringService
.NET Microservices Architecture Guidance (Microsoft)
- .NET Microservices: Architecture for Containerized .NET Applications
- Download eBook (PDF)
- Microservice Architecture with ASP.NET Core (Video)
- Implement Microservices Patterns with .NET Core and Docker Containers (Video)
Repository : https://github.com/dotnet-architecture/eShopOnContainers
A Microservices Implementation Journey
January 2018-March 2018
- A Microservices implementation journey — Part 1
- A Microservices implementation journey — Part 2
- A Microservices implementation journey — Part 3
- A Microservices implementation journey — Part 4
- A Microservices implementation journey — Part 5
- A Microservices implementation journey — Part 6
Repository : https://github.com/aramkoukia/microservices-prototype
Microservices and Docker with .Net Core and Azure Service Fabric/Kubernetes
February 2018-September 2018
- Microservices and Docker with .Net Core and Azure Service Fabric – Part One
- Microservices and Docker with .Net Core and Azure Service Fabric – Part two
- Microservices and Docker with .Net Core and Azure Service Fabric – Part three
- Microservices and Docker with .Net Core and Azure Service Fabric – Part four
- Building resilient applications with Polly
Repository : https://github.com/vany0114/microservices-dotnetcore-docker-sf-k8s
Microservices with .NET Core Tutorials
September 2018-October 2018
- Understanding Microservices Architecture
- Getting Started with Azure Service Fabric
- Building a Microservice with ASP.NET Core
- Building an Azure Service Fabric Cluster
- Microservices Deployment Patterns
Building Microservices on .Net platforms
May 2020
- Microservices Architecture on .NET with applying CQRS, Clean Architecture and Event-Driven Communication
- Microservices Using ASP.NET Core, MongoDB and Docker Container
- Using Redis with ASP.NET Core, and Docker Container for Basket Microservices
- Building Ocelot API Gateway Microservices with ASP.NET Core and Docker Container
- Microservices Event Driven Architecture with RabbitMQ and Docker Container on .NET
- CQRS and Event Sourcing in Event Driven Architecture of Ordering Microservices
- AspnetRun Microservices Renewed !
Repository : https://github.com/aspnetrun/run-aspnetcore-microservices
Books
- Building Microservices with .NET Core (by Gaurav Kumar Aroraa, Lalit Kale, and Kanwar Manish) June 14, 2017
- Microservices by examples using .NET Core (by Biswa Pujarini Mohapatra, Baishakhi Banerjee, and Gaurav Aroraa) April 16, 2019
- Building Microservices with ASP.NET Core (by Kevin Hoffman) August 31, 2017
- Building Microservices with .NET Core 2.0 (by Gaurav Aroraa) December 22, 2017
- Hands-On Microservices with C# (by Matt R. Cole) June 29, 2018
- Hands-On Microservices with C# 8 and .NET Core 3 (by Gaurav Aroraa and Ed Price) March 27, 2020
- Microservices in .NET Core (by Christian Horsdal Gammelgaard) February 3, 2017
Free eBooks
- .NET Microservices: Architecture for Containerized .NET Applications – Download PDF
- Microservices in .NET Core (with examples in Nancy) – Manning Publications
- Microservices Recipes (a free gitbook)
Courses
- .NET Core Microservices | Udemy – (Packt)
- Microservices Architecture and Implementation on .NET 5 | Udemy
- Building Microservices using ASP.NET Core 5.0 and Docker | Udemy
- Getting Started .NET Core Microservices RabbitMQ | Udemy
- Build Microservices with .NET Core & Amazon Web Services | Udemy
- ASP.NET Core Microservices: Getting Started | Pluralsight
- Microservices Communication in ASP.NET Core | Pluralsight
- Versioning and Evolving Microservices in ASP.NET Core | Pluralsight
- Securing Microservices in ASP.NET Core | Pluralsight
- Deploying ASP.NET Core Microservices Using Kubernetes and AKS | Pluralsight
- Strategies for Microservice Scalability and Availability in ASP.NET Core | Pluralsight
- Step-by-step tutorial for building microservices using .NETCourse content :
- Building two .NET Microservices using the REST API pattern
- Working with dedicated persistence layers for both services
- Deploying our services to Kubernetes cluster
- Employing the API Gateway pattern to route to our services
- Building Synchronous messaging between services (HTTP & gRPC)
- Building Asynchronous messaging between services using an Event Bus (RabbitMQ)
Other Tutorials
- Microservices with ASP.NET Core 3.1
- Repository : https://github.com/procodeguide/Microservices.Sample
- Get Started Building Microservices with ASP.NET Core and Docker in Visual Studio Code
- Microservices with event sourcing using .NET Core
- Microservice Architecture in ASP.NET Core with API Gateway
- Repository : https://github.com/iammukeshm/Microservice.WebApi
- RabbitMQ with ASP.NET Core – Microservice Communication with MassTransit
- Programming a Microservice with .Net Core 3.1
- Repository : https://github.com/WolfgangOfner/MicroserviceDemo
- Securing Microservices with IdentityServer4, OAuth2 and OpenID Connect fronted by Ocelot API Gateway
- Using gRPC in Microservices for Building a high-performance Interservice Communication with .Net 5
- Repository : https://github.com/aspnetrun/run-aspnet-grpc
- Our first Microservice with .NET Core 3.1
- Microservice Series – From Zero to Hero
- How To Develop Microservices Using .Net Core & Docker
- Using Microservices in .Net Core and Docker container
- Microservices Using ASP.NET Core
- Microservices Using .Net Core 2.X With C# and Docker
- Serverless Event-Driven Architecture on Azure: A Worked Example – Part 1 and Part2
- Edwin van Wijk — Building microservices with .NET Core and Docker (Video)
- Microservice architecture with ASP.NET Core (Video)
- Implement microservices patterns with .NET Core and Docker containers – BRK3317 (Video)
- Create .NET Core Microservice Using Best Practices (Video)
- APIs and Microservices in ASP.NET Core Today and Tomorrow – Glenn Condron (Video)
- Microservices and more in .NET Core 3.0 (Video)
- Ocelot Api Gateway with ASP.NET Core 2.1 and VS Code (Video)
- Building Reactive Microservices with .NET Core – Kevin Hoffman, Capital One (Video)
- Building .NET Microservices — Kevin Hoffmann (Video)
- Dan Wahlin on Microservices with Docker, Angular, and ASP.Net Core | Evening of Angular (Video)
- Building Resilient Microservices with .NET Core and Steeltoe – Zach Brown & Matt Horan, Pivotal (Video)
- .NET Microservices with DAPR (Video)
- Navigating microservices with .NET Core and Tye – Ryan Nowak (Video)
- Developing and Deploying Microservices with ‘Tye’ (Video)
- On .NET Live – Intro to Microservice Patterns for .NET Developers (Video)
- Splitting up a Monolith to (micro)Services by CodeOpinion (Video)
- Building microservices with Tye (Video)
Sample Projects
- https://github.com/vietnam-devs/coolstore-microservices
- https://github.com/EdwinVW/pitstop
- https://github.com/chayxana/Restaurant-App
- https://github.com/netcorebcn/quiz
- https://github.com/twzhangyang/RestAirline
- https://github.com/thangchung/practical-dapr
- https://github.com/thangchung/shopping-cart-k8s
- https://github.com/thangchung/ShoppingCartDemo
- https://github.com/thangchung/magazine-website-akka
- https://github.com/thangchung/magazine-website
- https://github.com/alugili/ModernArchitectureShop
- https://github.com/MarcelMichau/fake-survey-generator
- https://github.com/kimcu-on-thenet/dapr-tye-simple-microservices
- https://github.com/dzimchuk/book-fast-docker
- https://github.com/dzimchuk/book-fast-service-fabric
- https://github.com/AlexeyKramarenko/.NET-Core-Microservices
- https://github.com/suadev/dotnet-istanbul-microservices-demo
- https://github.com/sandhaka/MyMicroservicesApplication
- https://github.com/ImranMA/MicroCouriers
- https://github.com/NHadi/HappySocialMedia
- https://github.com/xiajingren/NetCoreMicroserviceDemo
- https://github.com/HoussemDellai/MicroservicesOnContainers
- https://github.com/charlessolar/TodoMVC-DDD-CQRS-EventSourcing
- https://github.com/charlessolar/eShopOnContainersDDD
- https://github.com/Azure-Samples/Serverless-microservices-reference-architecture
- https://github.com/fcatae/Arda
- https://github.com/osstotalsoft/nbb
- https://github.com/AdrienTorris/aspnet-core-simple-microservices-sample
- https://github.com/MicroservicesBuildingBlocks/BuildingBlocks
- https://github.com/brucehu123/Study.Microservices
- https://github.com/hossambarakat/EspressoShop
- https://github.com/parameshg/northwind-mesh
- https://github.com/madslundt/NetCoreMicroservicesSample
- https://github.com/asc-lab/dotnetcore-microservices-poc
- https://github.com/devmentors/DNC-DShop
- https://github.com/logcorner/LogCorner.EduSync.Speech.Command/
- https://github.com/mmacneil/ASPNETCoreDockerMicroservices
- https://github.com/aramkoukia/microservices-prototype
- https://github.com/vany0114/microservices-dotnetcore-docker-sf-k8s
- https://github.com/vany0114/chaos-injection-using-simmy
- https://github.com/mspnp/microservices-reference-implementation
- https://github.com/SteeltoeOSS/Samples/tree/master/MusicStore
- https://github.com/mohamed-abdo/vehicle-tracking-microservices
- https://github.com/gfawcett22/EnterprisePlanner
- https://github.com/daxnet/we-text
- https://github.com/PacktPublishing/.NET-Core-Microservices
- https://github.com/PacktPublishing/Building-Microservices-with-DotNET-Core
- https://github.com/snatch-dev/Convey
- https://github.com/johnph/simple-transaction
- https://github.com/cloudnative-netcore/modernstore
- https://github.com/aacostamx/Microservice-using-ASP-NET-Core
Tools and Libraries
Messaging
- MassTransit – Distributed Application Framework for .NET
- NServiceBus – The most popular service bus for .NET
- Rebus – Simple and lean service bus implementation for .NET
- Kafka – Confluent’s Apache Kafka .NET client
- RabbitMQ – RabbitMQ .NET client for .NET Standard 2.0+ and .NET 4.6.1+
- EasyNetQ – An easy to use .NET API for RabbitMQ
- ZeroMQ – A 100% native C# implementation of ZeroMQ for .NET
- CAP – Distributed transaction solution in micro-service base on eventually consistency, also an eventbus with Outbox pattern
- Brighter – Command Dispatcher, Processor, and Distributed Task Queue
- Silverback – Silverback is a simple but feature-rich message bus for .NET (supports Kafka, RabbitMQ and MQTT).
Api Gateway
- Ocelot – .NET core API Gateway
- YARP – YARP (which stands for “YARP: A Reverse Proxy”) is a toolkit for developing high-performance HTTP reverse proxy applications
Service Discovery
- Consul.NET – Consul.NET is a .NET client library for the HashiCorp Consul HTTP API
Frameworks
- Microdot – Microdot is an open source .NET framework that answers a lot of the needs for easily creating microservices.
- Foundatio – Pluggable foundation blocks for building distributed apps.
Other
- Dapr – Dapr SDK for .NET (Dapr is a portable, event-driven, serverless runtime for building distributed applications)
- Project Tye – Tye is a tool that makes developing, testing, and deploying microservices and distributed applications easier
- Health Checks – Enterprise HealthChecks for ASP.NET Core Diagnostics Package
The Microservices .NET is a github repository by Mohammad Javad Ebrahimi
Leave a Reply