.NET 8 Microservices: DDD, CQRS, Vertical/Clean Architecture
.NET 8 Microservices: DDD, CQRS, Vertical/Clean Architecture, available at $79.99, has an average rating of 4.58, with 350 lectures, based on 5626 reviews, and has 33868 subscribers.
You will learn about ASPNET Core 8 Web API Development of Microservices ASPNET Minimal APIs and latest features of .Net8 and C# 12 Vertical Slice Architecture implementation with Feature folders CQRS implementation using MediatR library CQRS Validation Pipeline Behaviours with MediatR and FluentValidation Marten library for .NET Transactional Document DB on PostgreSQL Carter Library for Minimal API endpoint definition Using Redis as a Distributed Cache over Basketdb Implements Proxy, Decorator and Cache-aside Design Patterns Build a Highly Performant inter-service gRPC Communication with Basket Microservice Consume Discount Grpc Service for inter-service sync communication to calculate product final price Publish BasketCheckout Queue with using MassTransit and RabbitMQ PostgreSQL database connection and containerization Implementing DDD, CQRS, and Clean Architecture with using Best Practices Tactical Domain-Driven Design: Entities, Value Objects, Aggregates, Agg. Roots Developing CQRS with using MediatR, FluentValidation and Mapster packages Using Entity Framework Core ORM and auto migrate to SqlServer when application startup Entity Framework Core Code-First Approach, Migrations, DDD Entity Configurations in Clean Architecture implementation Async Microservices Communication with RabbitMQ Message-Broker Service Using RabbitMQ Publish/Subscribe Topic Exchange Model Consuming RabbitMQ BasketCheckout event queue with using MassTransit-RabbitMQ Configuration Using MassTransit for abstraction over RabbitMQ Message-Broker system API Gateways with Yarp Reverse Proxy applying Gateway Routing Pattern Yarp Reverse Proxy Configuration; Route, Cluster, Path, Transform, Destinations Rate Limiting with FixedWindowLimiter on Yarp Reverse Proxy Configuration ASPNET Core Web Application with Bootstrap 4 and Razor template Consume YarpApiGateway APIs using Refit Library with Generated HttpClientFactory Cross-cutting concerns Logging, global Exception Handling and Health Checks Dockerfile and docker-compose file for running Multi-container Docker environment This course is ideal for individuals who are Beginner of AspNet Core developers who interested in APIs and Microservices or C# developers interested in learning how to build Microservices on .Net or Senior Developers who want to engage with Microservices on .Net It is particularly useful for Beginner of AspNet Core developers who interested in APIs and Microservices or C# developers interested in learning how to build Microservices on .Net or Senior Developers who want to engage with Microservices on .Net.
Enroll now: .NET 8 Microservices: DDD, CQRS, Vertical/Clean Architecture
Summary
Title: .NET 8 Microservices: DDD, CQRS, Vertical/Clean Architecture
Price: $79.99
Average Rating: 4.58
Number of Lectures: 350
Number of Published Lectures: 350
Number of Curriculum Items: 350
Number of Published Curriculum Objects: 350
Original Price: $89.99
Quality Status: approved
Status: Live
What You Will Learn
- ASPNET Core 8 Web API Development of Microservices
- ASPNET Minimal APIs and latest features of .Net8 and C# 12
- Vertical Slice Architecture implementation with Feature folders
- CQRS implementation using MediatR library
- CQRS Validation Pipeline Behaviours with MediatR and FluentValidation
- Marten library for .NET Transactional Document DB on PostgreSQL
- Carter Library for Minimal API endpoint definition
- Using Redis as a Distributed Cache over Basketdb
- Implements Proxy, Decorator and Cache-aside Design Patterns
- Build a Highly Performant inter-service gRPC Communication with Basket Microservice
- Consume Discount Grpc Service for inter-service sync communication to calculate product final price
- Publish BasketCheckout Queue with using MassTransit and RabbitMQ
- PostgreSQL database connection and containerization
- Implementing DDD, CQRS, and Clean Architecture with using Best Practices
- Tactical Domain-Driven Design: Entities, Value Objects, Aggregates, Agg. Roots
- Developing CQRS with using MediatR, FluentValidation and Mapster packages
- Using Entity Framework Core ORM and auto migrate to SqlServer when application startup
- Entity Framework Core Code-First Approach, Migrations, DDD Entity Configurations in Clean Architecture implementation
- Async Microservices Communication with RabbitMQ Message-Broker Service
- Using RabbitMQ Publish/Subscribe Topic Exchange Model
- Consuming RabbitMQ BasketCheckout event queue with using MassTransit-RabbitMQ Configuration
- Using MassTransit for abstraction over RabbitMQ Message-Broker system
- API Gateways with Yarp Reverse Proxy applying Gateway Routing Pattern
- Yarp Reverse Proxy Configuration; Route, Cluster, Path, Transform, Destinations
- Rate Limiting with FixedWindowLimiter on Yarp Reverse Proxy Configuration
- ASPNET Core Web Application with Bootstrap 4 and Razor template
- Consume YarpApiGateway APIs using Refit Library with Generated HttpClientFactory
- Cross-cutting concerns Logging, global Exception Handling and Health Checks
- Dockerfile and docker-compose file for running Multi-container Docker environment
Who Should Attend
- Beginner of AspNet Core developers who interested in APIs and Microservices
- C# developers interested in learning how to build Microservices on .Net
- Senior Developers who want to engage with Microservices on .Net
Target Audiences
- Beginner of AspNet Core developers who interested in APIs and Microservices
- C# developers interested in learning how to build Microservices on .Net
- Senior Developers who want to engage with Microservices on .Net
This course comes from alive github aspnetrun microservices repository which verified from community with2300+ stars and 1300+ forks.
You will learn how to build Microservices on .Netplatforms which used Asp.Net Web API, Docker, RabbitMQ, MassTransit, Grpc, Yarp API Gateway, PostgreSQL, Redis, SQLite, SqlServer, Marten, Entity Framework Core, CQRS, MediatR, DDD, Verticaland Clean Architectureimplementation using latest codesand best practicesof .NET 8on cloud-native environments.
You will develop e-commerce modules over Product, Basket, Discount and Ordering microservices with NoSQL (PostgreSQL DocumentDB, Redis) and Relational databases (SQLite, Sql Server) with communicating over RabbitMQ Event Driven Communication and using Yarp API Gateway. You can find Microservices Architecture and Step by Step Implementation on .NETwhich step by step developing this course with extensive explanations and details.
Along with this you’ll develop following microservices and items:
Catalog microservice which includes;
-
ASP.NET Core Minimal APIs and latest features of .NET 8and C# 12
-
Vertical Slice Architecture implementation with Feature folders
-
CQRSimplementation using MediatRlibrary
-
CQRSValidation Pipeline Behaviours with MediatRand FluentValidation
-
Martenlibrary for .NET Transactional Document DB on PostgreSQL
-
Carterlibrary for Minimal API endpoint definition
-
Cross-cutting concerns Logging, global Exception Handlingand Health Checks
-
Dockerfileand docker-compose file for running Multi-container in Docker environment
Basket microservice which includes;
-
ASP.NET 8Web API application, Following REST API principles, CRUD operations
-
Redisas a Distributed Cacheover basketdb
-
Implements Proxy, Decoratorand Cache-asideDesign Patterns
-
ConsumeDiscount gRPC Service for inter-service sync communication to calculate product final price
-
PublishBasketCheckout Queue with using MassTransitand RabbitMQ
Discount microservice which includes;
-
ASP.NET gRPC Server application
-
Build a Highly Performant inter-service gRPC Communication with Basket Microservice
-
Exposing gRPC Serviceswith creating Protobuf messages
-
Entity Framework Core ORM– SQLite Data Provider and Migrations
-
SQLite databaseconnection and containerization
Microservices Communication
-
Sync inter-service gRPC Communication
-
Async Microservices Communication with RabbitMQ Message-Broker Service
-
Using RabbitMQ Publish/Subscribe Topic Exchange Model
-
Using MassTransit for abstraction over RabbitMQ Message-Broker system
-
Publishing BasketCheckout eventqueue from Basket microservices and Subscribing this event from Ordering microservices
-
Create RabbitMQ EventBus.Messages library and add references Microservices
Ordering Microservice
-
Implementing DDD, CQRS, and Clean Architecture with using Best Practices
-
Developing CQRS with using MediatR, FluentValidation and Mapster packages
-
Use Domain Events& Integration Events
-
Entity Framework Core Code-First Approach, Migrations, DDD Entity Configurations
-
Consuming RabbitMQ BasketCheckout event queue with using MassTransit-RabbitMQ Configuration
-
SqlServer database connection and containerization
-
Using Entity Framework Core ORM and auto migrate to SqlServer when application startup
Yarp API Gateway Microservice
-
Implement API Gateways with Yarp Reverse Proxy applying Gateway Routing Pattern
-
Yarp Reverse Proxy Configuration; Route, Cluster, Path, Transform, Destinations
-
Rate Limiting with FixedWindowLimiteron Yarp Reverse Proxy Configuration
-
Sample microservices/containers to reroute through the API Gateways
WebUI ShoppingApp Microservice
-
ASP.NET Core Web Applicationwith Bootstrap 4and Razortemplate
-
ConsumeYarpApiGateway APIs using Refit Library with Generated HttpClientFactory
-
ASPNET Core Razor Tools — View Components, partial Views, Tag Helpers, Model Bindings and Validations, Razor Sections etc.
Docker Compose establishment with all microservices on docker;
-
Containerizationof microservices
-
Orchestratingof microservices and backing services (databases, distributed caches, message brokers..)
-
Override Environment variables
On top of all these, you’ll learn how to write quality code,not just how to build microservices. In this course you will see the demonstrating a layered application architecture with DDDbest practices. Implements NLayer Hexagonal architecture (Core, Application, Infrastructure and Presentation Layers) and Domain Driven Design (Entities, Repositories, Domain/Application Services, DTO’s…) and aimed to be a Clean Architecture, with applying SOLID principles in order to use for a project template. Also implements best practices like loosely-coupled, dependency-inverted architecture and using design patterns such as Dependency Injection, logging, validation, exception handling and so on.
Is this course for you?
This course is very practical, about 95%+ of the lessons will involve you coding along with me on this project. If you are the type of person who gets the most out of learning by doing, then this course is definitely for you.
Tools you need for this course
In this course all the lessons are demonstrated using Visual Studio as a code editor. You can of course use any code editor you like and any Operating system you like as long as it’s Windows or Mac. Also using Docker Desktop in order to use different database providers.
Course Curriculum
Chapter 1: Course Introduction
Lecture 1: Introduction
Lecture 2: Prerequisites, Source Code and Course Slides
Lecture 3: Run the Final Application
Lecture 4: Project Code Structure
Lecture 5: Microservices Architectures, Patterns, Libraries and Best Practices in Course
Lecture 6: Microservices Multi-Architectural Patterns (External vs Internal Architectures)
Lecture 7: How to Follow the Course (The Course Flow and Way of Learning)
Chapter 2: What are Microservices ?
Lecture 1: What are Microservices ?
Lecture 2: What is Microservices Architecture ?
Lecture 3: Microservices Characteristics
Lecture 4: Benefits of Microservices Architecture
Lecture 5: Challenges of Microservices Architecture
Lecture 6: When to Use Microservices Architecture – Best Practices
Lecture 7: When Not to Use Microservices – Anti-Patterns of Microservices
Lecture 8: Monolithic vs Microservices Architecture Comparison
Lecture 9: The Database-per-Service Pattern – Polyglot Persistence
Lecture 10: Decomposition of Ecommerce Microservices: Catalog, Basket, Discount and Ordering
Chapter 3: Why .NET and What is new .NET 8 and C# 12 ?
Lecture 1: Why .NET ?
Lecture 2: Cloud-Native Development with .Net 8
Lecture 3: .NET loves Containers and Microservices
Lecture 4: What is new .NET 8 ?
Lecture 5: What is new .C# 12 ? Primary Constructors, Collection Expressions, Inline Arrays
Lecture 6: C# Top-level statements, Global usings, Pattern Matching
Chapter 4: Asp.Net 8 for Microservice Development: Minimal APIs, DI, Routing and Docker
Lecture 1: ASP.NET 8 for Microservice Development
Lecture 2: Minimal APIs in ASP.NET Core
Lecture 3: Create ASP.NET Core Web API for Single Microservice
Lecture 4: Clear Project for Single Microservices: Setting Up a Minimal ASP.NET Web API
Lecture 5: Todo Service: Create Minimal API with ASP.NET Core for Single Microservice
Lecture 6: TEST – Todo Service: Create Minimal API w/ ASP.NET Core for Single Microservice
Lecture 7: Containerize Microservices with Docker Containers, Images, and Registries
Lecture 8: Containerize Todo Asp.Net Web API Microservice and Run Docker Profile
Chapter 5: First Microservice: Catalog.API with Vertical Slice Architecture and CQRS
Lecture 1: Introduction – Catalog.API with Vertical Slice Architecture and CQRS
Lecture 2: Create New Github Repository For Our Microservice Project
Lecture 3: Clone Github Repository and Create New Solution with Visual Studio
Lecture 4: Create Asp.Net Web Api for Catalog.API Microservice
Lecture 5: Set Port Numbers for Catalog.API Microservice – Modify Launch Settings
Lecture 6: Domain Analysis of Catalog Microservices: Models, UCs, Rest Apis, Databases
Lecture 7: Technical Analysis of Catalog Microservices: Architectures, Patterns, Libraries
Lecture 8: Vertical Slice Architecture
Lecture 9: Vertical Slice versus Clean Architecture
Lecture 10: CQRS Design Pattern
Lecture 11: Logical and Physical Implementation of CQRS Pattern
Lecture 12: CQRS Design Pattern With MediatR Library (Logical CQRS Implementation)
Lecture 13: Develop Catalog.API Microservices Creating Domain Entities
Lecture 14: Develop Vertical Slice Feature Folder with CQRS and MediatR
Lecture 15: Develop Feature Handler class with CQRS and MediatR
Lecture 16: Create Abstraction on MediatR for CQRS – Command and Query separation
Lecture 17: Create Abstraction on MediatR for CQRS – Command and Query separation – 2
Lecture 18: Implement CQRS Abstractions ICommand into Vertical Slice Feature Handler class
Lecture 19: Develop Create Product Endpoint with Minimal Apis and Carter
Lecture 20: Develop POST Endpoint with Carter implements ICarterModule for Minimal Apis
Lecture 21: Develop POST Endpoint with Carter implements ICarterModule for Minimal Apis – 2
Lecture 22: Register MediatR and Carter libraries into Asp.Net Dependency Injection Service
Lecture 23: Test Catalog API – CreateProduct POST Request – Debug Carter Minimal API and Med
Chapter 6: Develop Catalog.API Infrastructure, Handler and Endpoint Classes for CRUD
Lecture 1: Introduction – Develop Catalog.API Infrastructure, Handler and Endpoint Classes
Lecture 2: Infrastructure – Data Concerns for Catalog API – Marten .NET Transactional DB
Lecture 3: Opening Sessions in Marten as Document DB
Lecture 4: Develop CommandHandler to Save Product to DB using Marten Library
Lecture 5: Register and Configure Marten DocumentDB library into Program.cs asp.net DI
Lecture 6: EShop Microservices Deployment Strategy
Lecture 7: Setup PostgreSQL DB using Docker-compose file for Multi-container Docker env
Lecture 8: Add PostgreSQL DB image into Docker-compose file for Multi-container Docker env
Lecture 9: Run Docker-Compose on Visual Studio to setup PostgreSQL DB on Docker
Lecture 10: Connect Postgres DB from local Catalog Microservices and send POST request
Lecture 11: Develop GetProducts Feature in Vertical Slice with CQRS, MediatR in Handler clas
Lecture 12: Develop GetProducts GET Endpoint with Minimal Apis and Carter
Lecture 13: Test GetProducts Endpoint Connecting to Docker Postgres Container
Lecture 14: Create Postman Collection for EShop Microservices
Lecture 15: Develop GetProductById Handler with CQRS and MediatR
Lecture 16: Develop GetProductById GET Endpoint with Minimal Apis and Carter
Lecture 17: Test GetProductById Endpoint Connecting to Docker Postgres Container
Lecture 18: Develop GetProductByCategory Handler with CQRS and MediatR
Lecture 19: Develop GetProductByCategory GET Endpoint with Minimal Apis and Carter
Lecture 20: Test GetProductByCategory Endpoint Connecting to Docker Postgres Container
Lecture 21: Develop UpdateProduct Handler with CQRS and MediatR
Lecture 22: Develop UpdateProduct PUT Endpoint with Minimal Apis and Carter
Lecture 23: Test UpdateProduct Endpoint Connecting to Docker Postgres Container
Lecture 24: Develop DeleteProduct Handler with CQRS and MediatR
Lecture 25: Develop DeleteProduct DELETE Endpoint with Minimal Apis and Carter
Lecture 26: Test DeleteProduct Endpoint Connecting to Docker Postgres Container
Chapter 7: Develop Catalog.API Cross-cutting Concerns
Lecture 1: Introduction – Develop Catalog.API Cross-cutting Concerns
Lecture 2: MediatR Pipeline Behaviours and Fluent Validation Library
Lecture 3: Add Cross-cutting Concerns into BuildingBlocks Class Library for all services
Lecture 4: Cross-cutting Concerns: Validate with AbstractValidator using Fluent Validation
Lecture 5: Validation Pipeline Behaviour with MediatR using Fluent Validation Library
Lecture 6: Remove Manual Validator and Test Validation Pipeline Behaviour with MediatR
Lecture 7: Develop CRUD Command Validators with Fluent Validation Pipeline Behaviour
Lecture 8: Global Handling Exceptions in ASP.NET Core with app.UseExceptionHandler
Lecture 9: BuildingBlocks Handling Exceptions Generic Way w/ app.UseExceptionHandler
Lecture 10: Global Exception Handling with IExceptionHandler interface in Asp.net Core
Lecture 11: Register Custom Exception Handling into Asp.net with AddExceptionHandler method
Lecture 12: Logging Behavior in MediatR Pipeline for Cross-cutting concerns
Lecture 13: Test Logging Behaviour for all MediatR Requests on Catalog.API microservices
Instructors
-
Mehmet Ozkaya
Software Architect | Microservices | .NET | AWS | Azure
Rating Distribution
- 1 stars: 106 votes
- 2 stars: 118 votes
- 3 stars: 532 votes
- 4 stars: 1889 votes
- 5 stars: 2994 votes
Frequently Asked Questions
How long do I have access to the course materials?
You can view and review the lecture materials indefinitely, like an on-demand channel.
Can I take my courses with me wherever I go?
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don’t have an internet connection, some instructors also let their students download course lectures. That’s up to the instructor though, so make sure you get on their good side!
You may also like
- Top 10 Video Editing Courses to Learn in November 2024
- Top 10 Music Production Courses to Learn in November 2024
- Top 10 Animation Courses to Learn in November 2024
- Top 10 Digital Illustration Courses to Learn in November 2024
- Top 10 Renewable Energy Courses to Learn in November 2024
- Top 10 Sustainable Living Courses to Learn in November 2024
- Top 10 Ethical AI Courses to Learn in November 2024
- Top 10 Cybersecurity Fundamentals Courses to Learn in November 2024
- Top 10 Smart Home Technology Courses to Learn in November 2024
- Top 10 Holistic Health Courses to Learn in November 2024
- Top 10 Nutrition And Diet Planning Courses to Learn in November 2024
- Top 10 Yoga Instruction Courses to Learn in November 2024
- Top 10 Stress Management Courses to Learn in November 2024
- Top 10 Mindfulness Meditation Courses to Learn in November 2024
- Top 10 Life Coaching Courses to Learn in November 2024
- Top 10 Career Development Courses to Learn in November 2024
- Top 10 Relationship Building Courses to Learn in November 2024
- Top 10 Parenting Skills Courses to Learn in November 2024
- Top 10 Home Improvement Courses to Learn in November 2024
- Top 10 Gardening Courses to Learn in November 2024