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

Coursera

Event-Driven Systems, Security, and Microservices

Packt via Coursera

Overview

Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it
Updated in May 2025. This course now 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. This course dives into the implementation of event-driven architectures in microservices and focuses on secure communication between services. You'll gain practical skills in utilizing RabbitMQ and MassTransit for asynchronous communication, which is essential for developing scalable and reliable systems. Learn how to implement modular monolithic designs and explore the complexities of integrating microservices using event-driven principles. The course begins by introducing asynchronous messaging with RabbitMQ and MassTransit. You will explore modular monolithic architectures and how they handle asynchronous communication between modules for better scalability. You will also examine key messaging patterns like publish/subscribe, ensuring you understand the full process of event-driven systems. Moving forward, you will work on developing integration events, including setting up shared messaging libraries and using MassTransit to handle integration events. The course also includes in-depth testing of integration events and the handling of message flows, ensuring your systems are robust and functional. Targeted at software developers and engineers with a basic understanding of .NET and microservices, this course covers everything from implementing security with Keycloak to containerizing your applications using Docker-Compose. The course provides hands-on experience in building secure, scalable systems in real-world scenarios. Basic knowledge of .NET, microservices, and event-driven architecture concepts.

Syllabus

  • Async Communications Between Modules with RabbitMQ & MassTransit for UpdatePrice
    • In this module, we will focus on implementing asynchronous communication between modules using RabbitMQ and MassTransit. You will learn to design integration events for price updates and set up a reliable messaging system between the catalog and basket modules. Practical steps, including testing the event handling process, will ensure a seamless and scalable integration.
  • Develop User Identity Module with Keycloak Authentication
    • In this module, we will explore how to develop a user identity module using Keycloak for secure authentication. You will learn to integrate Keycloak with OAuth2 and OpenID Connect, configure it in a Docker Compose environment, and implement authentication and authorization in the eShop modules for a secure, scalable application.
  • Ordering Module with Vertical Slice Architecture and CQRS
    • In this module, we will guide you through developing an ordering module using vertical slice architecture and CQRS. You will build domain entities, infrastructure, and API endpoints while applying tactical Domain-Driven Design patterns and MediatR for efficient command and query handling.
  • Outbox Pattern for Reliable Microservices Messaging with BasketCheckout Use Case
    • In this module, we will focus on implementing the outbox pattern to ensure reliable messaging in the microservices architecture. You will learn to integrate asynchronous messaging for the BasketCheckout use case, ensuring consistent and reliable communication between the basket and ordering modules.
  • Containerize and Orchestrate EShop Modular App in Docker-Compose
    • In this module, we will teach you how to containerize and orchestrate the eShop modular application using Docker-Compose. You will set up multi-container deployments, configure the environment, and perform tests to ensure that all modules work seamlessly in a containerized environment.
  • Migrating to Microservices: EShop Modules to Microservices with Strangler Fig
    • In this module, we will explore the process of migrating a monolithic eShop application to microservices using the Strangler Fig pattern. You will learn to decompose modules, manage interservice communication, and tackle the challenges of data consistency and distributed transactions during the migration.
  • Thanks
    • In this final module, we will wrap up the course by reviewing the key concepts and skills you’ve learned. You’ll also find additional resources for continued learning to help you further hone your backend development skills using .NET.

Taught by

Packt - Course Instructors

Reviews

Start your review of Event-Driven Systems, Security, and Microservices

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.