Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Modular Monolith Architecture
00 - Introduction
Agenda, Your Instructor, Course Structure (5:57)
How To Use This Course (2:32)
01 - Modular Monoliths: Introduction
Introduction, Monoliths and Microservices (15:27)
Modular Monoliths (14:56)
Module Constraints (15:51)
02 - Defining Module Boundaries
Domain-Driven Design, Event Storming, Bounded Contexts (15:20)
Introducing Evently Sample Application (6:10)
Building the First Module (35:36)
Refactoring to Clean Architecture (38:37)
Events Module Review (11:01)
03 - Module Cross-Cutting Concerns
Cross-Cutting Concerns (6:19)
Dependency Injection (14:47)
Module Configuration (5:12)
Structured Logging With Serilog and Seq (10:43)
Exception Handling (5:47)
Validation With FluentValidation (6:13)
Distributed Caching With Redis (9:30)
Health Checks (6:22)
Automatically Registering Endpoints (8:18)
04 - Module Communication
Module Communication Patterns (9:06)
Publishing Domain Events (7:03)
Introducing the Users Module (7:29)
Scaffolding the Ticketing Module (4:02)
Synchronous Communication (17:49)
Duplicating Data Between Modules (10:06)
Asynchronous Communication (17:23)
Eventual Consistency: Introduction (9:25)
05 - Authentication & Authorization
Authentication & Authorization (3:33)
Keycloak Identity Provider Setup (18:58)
Token Based Authentication (14:39)
User Registration With KeyCloak (22:22)
RBAC Authorization (23:56)
Stop Here: A Quick Intermission
2 Short Asks (1:13)
06 - Architecture Enforcement
Architecture Enforcement (5:50)
Modular Architecture (10:03)
Architecture Testing (19:30)
07 - Reliable Messaging: Outbox and Inbox
Reliable Messaging (4:14)
Outbox Pattern (31:56)
Outbox: Idempotent Consumers (21:21)
Inbox Pattern (12:56)
08 - Event-Driven Architecture
Event-Driven Architecture (11:49)
Event Notifications (5:29)
Event-Carried State Transfer (5:48)
Materialized Views and CQRS (11:15)
Saga Pattern, Orchestration (25:08)
09 - Testing Modular Monoliths
Testing Modular Monoliths (7:13)
Unit Testing (14:57)
Integration Testing (30:31)
System Integration Testing (13:49)
Automated Testing in CI/CD Pipelines (7:35)
10 - Microservices: Extracting Modules
Microservices Benefits, Extracting Modules (6:27)
Distributed Tracing, OpenTelemetry (17:06)
Distributed Messaging With RabbitMQ (10:53)
API Gateways, Introducing YARP (19:02)
Extracting Modules to Microservices (30:46)
11 - Course Updates
Upgrading the Modular Monolith to .NET 10 (18:34)
Migrating Away From FluentAssertions (5:25)
Migrating Away From MediatR (28:39)
Migrating Away From MassTransit (34:02)
Wrapping Up: A Small Ask
A Note From Me (0:56)
Bonus - Modular Monoliths: CQRS With MongoDB
Introduction, Document Databases (9:21)
Implementing CQRS With MongoDB (31:00)
A Small Ask From Me (1:14)
Helpful Resources
Postman Collections, OpenAPI
SQL Migration Scripts
Source Code
Slides
Agenda, Your Instructor, Course Structure
Complete and Continue
Lesson Content Locked
Your session expired. Please sign in again to continue.
Login