Integration Resilient Design Patterns with Spring WebFlux

Unlock the Power of Design Patterns to Build Scalable and Resilient Reactive Microservices with Spring WebFlux
Integration Resilient Design Patterns with Spring WebFlux
File Size :
2.44 GB
Total length :
8h 28m



Vinoth Selvaraj


Last update




Integration Resilient Design Patterns with Spring WebFlux

What you’ll learn

Advanced Spring WebFlux
Reactive Microservices
Circuit Breaker Pattern
Rate Limiter Pattern
Bulkhead Pattern
Timeout Pattern
Retry Pattern
Gateway Aggregator Pattern
Scatter Gather Pattern
Orchestrator Pattern
Splitter Pattern

Integration Resilient Design Patterns with Spring WebFlux


Knowledge on Reactive Programming
Knowledge on Spring WebFlux
Comfortable with Indian Accent ๐Ÿ™‚


In this comprehensive course, you will dive into the world of design patterns and learn how to leverage them to build highly scalable and resilient reactive microservices using Spring WebFlux. You will explore various Integration Patterns that enable efficient communication between microservices, as well as Resilient Patterns that enhance the robustness of your services. By the end of this course, you will have a solid understanding of how to apply design patterns effectively and create reactive microservices that can handle complex workflows and withstand failures.Course Content:Integration Patterns:Handling multiple reactive microservices communication efficientlyGateway Aggregator Pattern: Reducing network latency and acting as a facade for complex backend servicesScatter Gather Pattern: Routing requests to multiple backend services and aggregating their responsesOrchestrator Pattern (Saga – for parallel workflow): Coordinating multiple backend services in complex workflowsOrchestrator Pattern (Saga – for sequential workflow): Managing sequential workflows by replacing chained microservice callsSplitter Pattern: Processing individual elements in a list of repeating elementsResilient Patterns:Building robust and resilient reactive microservicesTimeout Pattern: Handling unresponsive remote services by setting appropriate timeoutsRetry Pattern: Dealing with intermittent network or remote service issues by retrying failed requestsCircuit Breaker Pattern: Protecting services and meeting SLAs when dependent remote services are unhealthy or unreachableRate Limiter Pattern: Safeguarding services from DDoS attacks and controlling network call limitsBulkhead Pattern: Allocating resources based on priority to prevent one feature’s failure from affecting the entire applicationJoin this course to unlock the power of design patterns and learn how to build scalable, resilient, and highly performant reactive microservices with Spring WebFlux. Gain the skills necessary to tackle complex workflows, optimize communication between microservices, and ensure the robustness of your applications in the face of failures.


Section 1: Introduction

Lecture 1 [MUST WATCH]: What will you learn from this course?

Lecture 2 [Optional] – Reactive Series

Lecture 3 Source Code

Section 2: Gateway Aggregator Pattern

Lecture 4 Gateway Aggregator Pattern – Intro

Lecture 5 Jar Download

Lecture 6 External Services

Lecture 7 Project Setup

Lecture 8 Creating DTO

Lecture 9 Creating External Service Clients

Lecture 10 Aggregator Service

Lecture 11 Aggregator Controller

Lecture 12 Gateway Aggregator Pattern Demo

Lecture 13 Is our Aggregator resilient?

Lecture 14 Making Aggregator more resilient!

Lecture 15 Are we making parallel calls?

Lecture 16 Product Service error handling

Lecture 17 Summary

Section 3: Scatter Gather Pattern

Lecture 18 Scatter Gather Pattern – Intro

Lecture 19 External Services

Lecture 20 Creating DTO

Lecture 21 Creating Delta Service Client

Lecture 22 Creating JetBlue / Frontier Service Client

Lecture 23 Creating Service

Lecture 24 Creating Controller

Lecture 25 Scatter Gather Demo

Lecture 26 Summary

Section 4: Orchestrator Pattern (For Parallel Workflow)

Lecture 27 Orchestrator Pattern – Intro

Lecture 28 Orchestrator Scope

Lecture 29 External Services

Lecture 30 Creating DTO – Part 1

Lecture 31 Creating DTO – Part 2

Lecture 32 Creating Service Clients – Part 1

Lecture 33 Creating Service Clients – Part 2

Lecture 34 Orchestrator Request Context

Lecture 35 Util Class

Lecture 36 Orchestrator Pattern Implementation – High Level Architecture

Lecture 37 Payment Handler

Lecture 38 Inventory and Shipping Handlers

Lecture 39 Order Fulfillment Service

Lecture 40 Order Cancellation Service

Lecture 41 Order Orchestrator Service

Lecture 42 Debug Util

Lecture 43 Controller

Lecture 44 Orchestrator Demo

Lecture 45 Bug Fix

Lecture 46 Quick Note

Lecture 47 Summary

Section 5: Orchestrator Pattern (For Sequential Workflow)

Lecture 48 Sequential Workfkow – Intro

Lecture 49 External Services

Lecture 50 Project Setup

Lecture 51 Creating DTO

Lecture 52 Creating Service Clients

Lecture 53 Util Class

Lecture 54 Sequential Workflow – Architecture

Lecture 55 Sequential Workflow – Implementation – Part 1

Lecture 56 Sequential Workflow – Implementation – Part 2

Lecture 57 Sequential Workflow – Implementation – Part 3

Lecture 58 Sequential Workflow – Demo

Section 6: Splitter Pattern

Lecture 59 Splitter Pattern – Intro

Lecture 60 External Services

Lecture 61 Creating DTO – Part 1

Lecture 62 Creating DTO – Part 2

Lecture 63 Creating Service Clients

Lecture 64 Quick Note On Flux Requests

Lecture 65 [Courses] – For Streaming Requests and Responses

Lecture 66 Abstract Reservation Handler

Lecture 67 Car Reservation Handler

Lecture 68 Room Reservation Handler

Lecture 69 Reservation Service

Lecture 70 Controller

Lecture 71 Splittern Pattern – Demo

Section 7: Timeout Pattern

Lecture 72 Resiliency Pattern – Intro

Lecture 73 Timeout Pattern

Lecture 74 Project Setup

Lecture 75 Timeout Pattern Implementation

Lecture 76 Timeout Pattern Demo

Lecture 77 Summary

Section 8: Retry Pattern

Lecture 78 Retry Pattern – Intro

Lecture 79 External Services

Lecture 80 Project Setup

Lecture 81 Retry Pattern Implementation Demo

Lecture 82 4XX Issue Fix

Lecture 83 Quick Note On Retry Spec

Lecture 84 Summary

Section 9: Circuit Breaker Pattern

Lecture 85 Circuit Breaker Pattern – Intro

Lecture 86 Circuit Breaker Terminologies

Lecture 87 External Services

Lecture 88 Project Setup

Lecture 89 Maven Dependencies

Lecture 90 Resilience4j – Config

Lecture 91 Circuit Breaker Pattern Implementation

Lecture 92 Circuit Breaker Pattern Demo

Lecture 93 Overriding Configuration

Lecture 94 Summary

Section 10: Rate Limiter Pattern

Lecture 95 Rate Limiter Pattern – Intro

Lecture 96 Server Side Rate Limiter – Implementation

Lecture 97 Server Side Rate Limiter – Demo

Lecture 98 Client Side Rate Limiter – Implementation

Lecture 99 Summary

Section 11: Bulkhead Pattern

Lecture 100 Bulkhead Pattern – Intro

Lecture 101 Project Setup

Lecture 102 Problem Demo

Lecture 103 Why It happens?

Lecture 104 Bulkhead Pattern Implementation

Lecture 105 Summary

Section 12: Thank You

Lecture 106 Thank You

Any Developer / Architect who is interested in Microservice Development / Architecture with WebFlux

Course Information:

Udemy | English | 8h 28m | 2.44 GB
Created by: Vinoth Selvaraj

You Can See More Courses in the Developer >> Greetings from

New Courses

Scroll to Top