Tags
Language
Tags
July 2025
Su Mo Tu We Th Fr Sa
29 30 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31 1 2
    Attention❗ To save your time, in order to download anything on this site, you must be registered 👉 HERE. If you do not have a registration yet, it is better to do it right away. ✌

    ( • )( • ) ( ͡⚆ ͜ʖ ͡⚆ ) (‿ˠ‿)
    SpicyMags.xyz

    Spring Webflux Masterclass: Reactive Microservices [2024]

    Posted By: ELK1nG
    Spring Webflux Masterclass: Reactive Microservices [2024]

    Spring Webflux Masterclass: Reactive Microservices [2024]
    Last updated 8/2024
    MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
    Language: English | Size: 4.45 GB | Duration: 13h 18m

    Build Highly Responsive, Scalable, Efficient Microservices With Spring WebFlux and Reactive Programming

    What you'll learn

    Spring WebFlux From Scratch

    Reactive Microservices

    Performance Comparison - Traditional vs Reactive

    Achieving High Performance & Scalability With HTTP2

    Streaming API With Back-Pressure

    Reactive Relational DB Connectivity R2DBC

    Server Sent Events

    WebClient

    Functional Endpoints

    WebFilters / Interceptors

    Integration Testing

    Requirements

    Strong Knowledge on Reactive Programming (checkout my course if you are new to reactive programming)

    Knowledge on Spring Boot

    Comfortable with Indian Accent :)

    Description

    Prerequisite: Knowledge on Reactive Programming.Course FocusThis course provides a comprehensive introduction to Spring WebFlux, a framework for building highly scalable, resilient and responsive web applications using reactive programming principles.What You'll LearnTraditional vs Reactive APIsHow Reactive APIs are different from Traditional APIs.Reactive Data Access R2DBCLearn to connect to relational databases reactively using R2DBC drivers, create reactive repositories with Spring Data R2DBC, implement CRUD operations with reactive data access patterns, and effectively integration test your data access layer.Running a throughput/efficiency test to demonstrate the power of R2DBC, its throughput and how it uses the system resources more efficiently compared to Spring Data JPA.Building CRUD OperationsMaster creating reactive controllers with Spring WebFlux annotations, handling requests and responses with Flux and Mono, integration testing your reactive controllers.Error Handling StrategiesDiscover techniques for managing exceptions within reactive pipelines using various operators. Learn how to return meaningful error responses for a robust user experience.WebFilter/Interceptor ChainingExplore how to implement WebFilters for pre-processing and post-processing requests and responses. Chain multiple WebFilters for complex logic, pass attributes from WebFilters to controllers, and share data effectively.Functional Programming with WebFluxLeverage the power of lambda expressions to write concise and readable code. Build reactive controllers with functional endpoints and understand the benefits of functional programming within WebFlux.Building Reactive ClientsLearn to use WebClient to build reactive clients that consume external APIs using reactive streams and handle asynchronous responses efficiently in a non-blocking manner.StreamingImplement client-side streaming for uploading data as a stream using WebClient and explore backpressure handling for optimized data transfer.Implement server-side streaming for downloading data as a stream using WebClient.Implement Server-Sent Events (SSE) with Spring WebFlux to enable real-time data updates from server to client.Optimizing for PerformanceGzip compressionHTTP connection pooling to optimize bandwidth usage and application scalability.Leveraging HTTP/2 protocol for efficient communication (New!).Integration TestingMaster integration testing with WebTestClient, combining testing practices into our learning process throughout the course.Course StructureFocus on practical code examples and demos tailored to each module's specific topic.Hands-on labs to solidify your learning throughout the course.Access to resources for further learning on both Spring WebFlux and prerequisite reactive programming concepts (articles, tutorials, official documentation).By the end of this course, you'll be equipped with the knowledge and skills to build modern, performant, and scalable web applications using Spring WebFlux.NoteA basic understanding of reactive programming is assumed as a prerequisite for this course.Join this course to master Spring WebFlux and unlock the potential of reactive programming for developing highly performant and scalable microservices. Gain the skills necessary to build resilient, efficient, and real-time applications using Spring WebFlux's non-blocking and event-driven architecture.

    Overview

    Section 1: Introduction

    Lecture 1 Before You Enroll

    Section 2: Traditional vs Reactive APIs

    Lecture 2 *** Resource ***

    Lecture 3 Project Setup

    Lecture 4 External Services

    Lecture 5 Traditional vs Reactive API

    Lecture 6 Traditional vs Reactive API - Demo

    Lecture 7 Traditional vs Reactive API - Demo via Browser

    Lecture 8 Exposing Streaming API

    Lecture 9 Common Mistake Using Reactive Pipeline

    Lecture 10 How Reactive Web Works - Step By Step

    Lecture 11 FAQ - Should Entire Stack Be Reactive?

    Lecture 12 Reactive Web is Resilient - Demo

    Lecture 13 Summary

    Section 3: Spring Data R2DBC

    Lecture 14 Introduction

    Lecture 15 Connection String

    Lecture 16 *** Resource *** - Database Initialization Scripts

    Lecture 17 Project Setup

    Lecture 18 Spring Data - Crash Course

    Lecture 19 Customer Entity / Repository

    Lecture 20 Step Verifier - Crash Course

    Lecture 21 CRUD Using Repository - Part 1

    Lecture 22 CRUD Using Repository - Part 2

    Lecture 23 CRUD Using Repository - Part 3

    Lecture 24 R2DBC - Show SQL

    Lecture 25 *** Assignment *** - Price Range Query Method

    Lecture 26 Pageable

    Lecture 27 What About Complex Queries?

    Lecture 28 *** Resource *** - SQL For Products Ordered By Customer

    Lecture 29 Join Query Using @Query

    Lecture 30 *** Resource *** - SQL For Projection

    Lecture 31 Projection

    Lecture 32 R2DBC Database Client

    Lecture 33 Summary

    Section 4: R2DBC vs JPA/JDBC

    Lecture 34 Introduction

    Lecture 35 [Performance Test] Throughput / Efficiency

    Lecture 36 How R2DBC Works

    Lecture 37 FAQ - Can I Use Spring Data JPA?

    Lecture 38 Reactive Manifesto

    Section 5: Reactive CRUD APIs

    Lecture 39 Introduction

    Lecture 40 FAQ - Do We Need DTOs?

    Lecture 41 DTO / Entity / Repository

    Lecture 42 Service Class Implementation

    Lecture 43 Controller

    Lecture 44 FAQ - @RequestBody Mono vs T

    Lecture 45 CRUD APIs Demo

    Lecture 46 Mono/Flux - Response Entity

    Lecture 47 Handling 4XX via Response Entity

    Lecture 48 @Modifying Query

    Lecture 49 Paginated Results

    Lecture 50 CRUD APIs Demo

    Lecture 51 WebTestClient - Introduction

    Lecture 52 Integration Testing - Part 1

    Lecture 53 Integration Testing - Part 2

    Lecture 54 Integration Testing - Part 3

    Lecture 55 POST / PUT - Body Publisher vs Body Value

    Lecture 56 Summary

    Section 6: Input Validation / Error Handling

    Lecture 57 Problem Detail

    Lecture 58 What About Bean Validation?

    Lecture 59 Project Setup

    Lecture 60 Application Exceptions

    Lecture 61 Request Validator

    Lecture 62 Validation - Emitting Error Signal

    Lecture 63 @ControllerAdvice

    Lecture 64 Demo via Postman

    Lecture 65 *** Assignment ***

    Lecture 66 Integration Tests

    Lecture 67 Summary

    Section 7: WebFilter

    Lecture 68 Introduction

    Lecture 69 WebFilter Chain - How It Works

    Lecture 70 Authentication & Authorization Requirements

    Lecture 71 WebFilter Implementation

    Lecture 72 Attributes via WebFilter

    Lecture 73 WebFilter Demo

    Lecture 74 Accessing Attributes via @Controller

    Lecture 75 Problem Detail - WebFilter Workaround

    Lecture 76 *** Assignment ***

    Lecture 77 Integration Tests

    Lecture 78 Summary

    Section 8: Functional Endpoints

    Lecture 79 Introduction

    Lecture 80 Router Configuration - Part 1

    Lecture 81 Request Handler

    Lecture 82 Router Configuration - Part 2

    Lecture 83 Input Validation / Error Handler

    Lecture 84 Paginated Results

    Lecture 85 Order Of The Routes

    Lecture 86 Demo via Postman

    Lecture 87 Integration Tests

    Lecture 88 Multiple Router Functions

    Lecture 89 Nested Router Functions

    Lecture 90 What About WebFilters

    Lecture 91 Request Predicates

    Lecture 92 *** Assignment ***

    Lecture 93 Functional / Request Predicates - Assignment Solution

    Lecture 94 Summary

    Section 9: WebClient - Non-Blocking HTTP Client

    Lecture 95 Introduction

    Lecture 96 Project Setup

    Lecture 97 Simple GET

    Lecture 98 Non-blocking Concurrent Requests

    Lecture 99 [Optional] - How Event Loop Works

    Lecture 100 URI Variables

    Lecture 101 Streaming GET

    Lecture 102 POST - Body Publisher vs Body Value

    Lecture 103 Default Headers Configuration / Override

    Lecture 104 Remote Service - Error Handling

    Lecture 105 Retrieve / Exchange

    Lecture 106 Query Params

    Lecture 107 Basic Auth

    Lecture 108 Bearer Auth

    Lecture 109 Exchange Filter Function

    Lecture 110 *** Assignment ***

    Lecture 111 WebClient Attributes

    Lecture 112 Summary

    Section 10: Streaming

    Lecture 113 Introduction

    Lecture 114 Uploading Million Products - Usecase

    Lecture 115 JSON Lines

    Lecture 116 Project Setup

    Lecture 117 Product Service

    Lecture 118 Product Streaming Upload API

    Lecture 119 Product Client

    Lecture 120 Client Streaming Request - Demo

    Lecture 121 @RequestBody - Non-Blocking Clarification

    Lecture 122 1 Million Products Upload - Demo

    Lecture 123 *** Assignment *** - Download API

    Lecture 124 *** Resource *** - FileWriter

    Lecture 125 1 Million Products Download - Demo

    Lecture 126 What About Bidirectional Stream

    Lecture 127 Summary

    Section 11: Server Sent Events / SSE

    Lecture 128 Introduction

    Lecture 129 Sink Configuration

    Lecture 130 Emitting Items via Sink

    Lecture 131 Exposing Streaming API

    Lecture 132 SSE Demo

    Lecture 133 Price Filter Implementation

    Lecture 134 *** Resource *** - Index HTML

    Lecture 135 Adding UI

    Lecture 136 Price Filter Demo via UI

    Lecture 137 Integration Tests

    Section 12: Performance Optimization

    Lecture 138 Introduction

    Lecture 139 gzip

    Lecture 140 *** Resource *** - gzip Properties

    Lecture 141 Enabling gzip

    Lecture 142 gzip Demo

    Lecture 143 Keep Alive / Connection Pooling

    Lecture 144 Keep Alive / Connection Pooling - Project Setup

    Lecture 145 *** Resource *** - Netstat Command

    Lecture 146 HTTP Connections via netstat

    Lecture 147 Configuring Connection Pool Size

    Lecture 148 Pool Size Calculation

    Lecture 149 SocketException - Too Many Open Files Issue

    Lecture 150 HTTP2 Introduction

    Lecture 151 HTTP2 - Demo

    Lecture 152 SubscribeOn - For Blocking IO

    Lecture 153 Summary

    Section 13: Final Project - Reactive Microservices

    Lecture 154 Trading Platform - Introduction

    Lecture 155 [Customer Portfolio] - *** Resource *** - Database Initialization Scripts

    Lecture 156 [Customer Portfolio] - Requirements Discussion

    Lecture 157 [Customer Portfolio] - Project Setup

    Lecture 158 [Customer Portfolio] - DTO / Entity / Repository

    Lecture 159 [Customer Portfolio] - Application Exceptions

    Lecture 160 [Customer Portfolio] - Customer Information Service

    Lecture 161 [Customer Portfolio] - Trade Buy Request Handler

    Lecture 162 [Customer Portfolio] - Trade Sell Request Handler

    Lecture 163 [Customer Portfolio] - Controller

    Lecture 164 [Customer Portfolio] - Exception Handler

    Lecture 165 [Customer Portfolio] - Integration Tests - Part 1

    Lecture 166 @Transactional - H2 DB Warning

    Lecture 167 [Customer Portfolio] - Integration Tests - Part 2

    Lecture 168 [Aggregator] - Introduction

    Lecture 169 [Aggregator] - Project Setup

    Lecture 170 [Aggregator] - Request Validator

    Lecture 171 [Aggregator] - Stock Service Client

    Lecture 172 [Aggregator] - Hot Price Stream

    Lecture 173 [Aggregator] - Customer Service Client

    Lecture 174 [Aggregator] - Customer Portfolio Service

    Lecture 175 [Aggregator] - Exposing Trade Platform APIs

    Lecture 176 [Aggregator] - @ControllerAdvice

    Lecture 177 [Aggregator] - Configuration

    Lecture 178 MockServer - Introduction

    Lecture 179 *** Resource *** - MockServer Dependency

    Lecture 180 [Aggregator] - Integration Test - Setup

    Lecture 181 [Aggregator] - Mocking Customer Service

    Lecture 182 [Aggregator] - Integration Tests - Customer Information API Test

    Lecture 183 [Aggregator] - Integration Tests - Stock Service Stream API Test

    Lecture 184 [Aggregator] - Integration Tests - Customer Trade API Test

    Lecture 185 Demo via Postman

    Lecture 186 *** Resource **** - Index HTML

    Lecture 187 Trading Platform - Final Demo

    Section 14: What's Next?

    Lecture 188 What's Next?

    Lecture 189 Reactive Course Series

    Section 15: Bonus Section / Articles

    Lecture 190 R2DBC - Entity Callback

    Lecture 191 Spring WebFlux - File Upload Example

    Lecture 192 Spring WebFlux Security

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