A collection of awesome training series, articles, videos, books, courses, sample projects, and tools for Microservices in .NET
Give a Star! ⭐️
If you liked this repo or if it helped you, please give a star ⭐️ for this repository. That will not only help strengthen our .NET community but also improve skills about the Microservices for .NET developers around the world 👍. Thank you very much.
Contents
- Training Series
- Books
- Free eBooks
- Courses
- Other Tutorials
- Sample Projects
- Tools and Libraries
- Contribution
- Licence
Training Series
Building Microservices On .NET Core
January 2019-September 2019
-
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 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 part09: Handling updates
-
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
-
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) - 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
Repository : https://github.com/devmentors/Pacco
.NET Conf: Focus on Microservices
August 2020
-
Beyond REST and RPC: Asynchronous Eventing and Messaging Patterns
-
The Intersection of Microservices, Domain-Driven Design and Entity Framework Core
-
API Communication in Microservices with Azure API Management and Azure Functions
-
Evolving .NET Framework Monoliths with .NET 5 and Kubernetes
-
Building & Debugging Microservices faster using Kubernetes and Visual Studio
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 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
Repository : https://github.com/DotNetMax/DockerMonitoringService
.NET Microservices Architecture Guidance (Microsoft)
-
.NET Microservices: Architecture for Containerized .NET Applications
-
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
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
Repository : https://github.com/vany0114/microservices-dotnetcore-docker-sf-k8s
Microservices with .NET Core Tutorials
September 2018-October 2018
Building Microservices on .Net platforms
May 2020
-
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
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
Courses
-
Microservices Architecture and Implementation on .NET 5 | Udemy
-
Building Microservices using ASP.NET Core 5.0 and Docker | Udemy
-
Build Microservices with .NET Core & Amazon Web Services | Udemy
-
Versioning and Evolving 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 .NET
Course 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
-
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
-
Serverless Event-Driven Architecture on Azure: A Worked Example - Part 1 and Part2
-
Edwin van Wijk — Building microservices with .NET Core and Docker (Video)
-
Implement microservices patterns with .NET Core and Docker containers - BRK3317 (Video)
-
APIs and Microservices in ASP.NET Core Today and Tomorrow - Glenn Condron (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)
-
Dan Wahlin on Microservices with Docker, Angular, and ASP.Net Core | Evening of Angular (Video)
-
Navigating microservices with .NET Core and Tye - Ryan Nowak (Video)
-
On .NET Live - Intro to Microservice Patterns for .NET Developers (Video)
-
Splitting up a Monolith to (micro)Services by CodeOpinion (Video)
Sample Projects
-
https://github.com/kimcu-on-thenet/dapr-tye-simple-microservices
-
https://github.com/suadev/dotnet-istanbul-microservices-demo
-
https://github.com/charlessolar/TodoMVC-DDD-CQRS-EventSourcing
-
https://github.com/Azure-Samples/Serverless-microservices-reference-architecture
-
https://github.com/AdrienTorris/aspnet-core-simple-microservices-sample
-
https://github.com/MicroservicesBuildingBlocks/BuildingBlocks
-
https://github.com/logcorner/LogCorner.EduSync.Speech.Command/
-
https://github.com/vany0114/microservices-dotnetcore-docker-sf-k8s
-
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/PacktPublishing/Building-Microservices-with-DotNET-Core
-
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
Contribution
Contributions are always welcome! Feel free to open an issue or create a pull request.
License
To the extent possible under law, Mohammad Javad Ebrahimi has waived all copyright and related or neighboring rights to this work.