Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Coursera

Mastering Microservices Design with CQRS, DDD, and Marten

Packt via Coursera

Overview

Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it
This course features Coursera Coach! A smarter way to learn with interactive, real-time conversations that help you test your knowledge, challenge assumptions, and deepen your understanding as you progress through the course. In this course, you'll master the design and implementation of microservices using CQRS, DDD, and Marten as a document database. You'll build scalable APIs, handle CRUD operations, and integrate microservices with PostgreSQL and Redis. Learn how to optimize performance using Docker, implement cross-cutting concerns like logging and exception handling, and utilize patterns such as Proxy and Decorator. The course also covers high-performance communication using gRPC for seamless interactions between microservices. By working with real-world examples, you'll learn how to structure and deploy microservices efficiently, ensuring they are robust and scalable. Ideal for developers familiar with .NET, this course will guide you through designing and deploying microservices that are efficient, reliable, and scalable. By the end of the course, you will be able to develop and deploy microservices using CQRS, DDD, Marten, gRPC, and Docker.

Syllabus

  • Develop Catalog.API Infrastructure, Handler, and Endpoint Classes for CRUD
    • In this module, we will focus on developing the foundational components for Catalog.API, including infrastructure, handlers, and endpoints for CRUD operations. We'll use Marten as a transactional document database and integrate PostgreSQL using Docker for seamless data management. By the end of this section, you will be able to create and test CRUD operations for your Catalog API.
  • Develop Catalog.API Cross-Cutting Concerns
    • In this module, we will address various cross-cutting concerns in Catalog.API, including validation, exception handling, and logging. We will introduce MediatR and Fluent Validation for automatic request validation and demonstrate how to handle global exceptions. By the end of this section, you'll have a robust, maintainable Catalog API with improved reliability and error management.
  • Basket Microservices with Vertical Slice Architecture and CQRS
    • In this module, we will explore how to design Basket microservices with Vertical Slice Architecture and implement CQRS using MediatR. We will focus on building and testing features like GetBasket, StoreBasket, and DeleteBasket, while utilizing Marten for data management. You will also learn how to containerize and orchestrate Basket microservices using Docker and Docker-Compose for seamless deployment.
  • Basket Microservices Apply Distributed Caching with Redis
    • In this module, we will enhance the performance of Basket microservices by integrating Redis for distributed caching. You will learn how to implement the cache-aside pattern and use Docker-Compose to orchestrate both PostgreSQL and Redis for a scalable microservices architecture. By the end of this section, you will have a high-performing, fault-tolerant Basket microservice.
  • Microservices Synchronous Communications with gRPC
    • In this module, we will focus on synchronous communication in microservices using gRPC. You will learn about the benefits of gRPC, how it works, and its role in enabling efficient communication between services. By the end of this section, you will be able to leverage gRPC for high-performance, real-time interactions between microservices.
  • Discount.Grpc Microservices for Microservices gRPC Communication
    • In this module, we will design and develop Discount.Grpc microservices, exposing CRUD operations for managing discounts via gRPC. You will also learn how to generate service classes from the discount.proto file and configure the service in your microservices solution. By the end of this section, you'll be able to implement and test gRPC communication for discount management.
  • Consuming Discount gRPC Service From Basket Microservice When Adding Cart Item
    • In this module, we will focus on consuming the Discount gRPC service from the Basket microservice when adding items to the cart. You will learn how to configure and test this integration in a Docker environment, ensuring that discounts are correctly applied during checkout. By the end of this section, you'll be able to integrate and verify gRPC communication between Basket and Discount microservices.

Taught by

Packt - Course Instructors

Reviews

Start your review of Mastering Microservices Design with CQRS, DDD, and Marten

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.