Spring WebFlux Masterclass: High-Performance Reactive APIs
Build 10x Faster, Scalable Spring Boot WebFlux Microservices: Non-Blocking I/O, R2DBC, WebClient, HTTP/2, Streaming
Lo que serás capaz de hacer
The course project is up to date Spring Boot 4.0 This Masterclass is the practical, complete guide to Spring WebFlux . You will master Non-Blocking I/O techniques, leveraging Reactive Programming principles, to build highly scalable and resilient microservices . The core focus is on maximizing performance and throughput by eliminating thread blocking. Learn advanced Spring Boot and Spring WebFlux skills including R2DBC for reactive data access, and HTTP/2 Streaming for optimal inter-service communication. This course delivers the expertise needed to transform your enterprise architecture for high-concurrency demands. What You Will Master: Core Skills & Performance Every module is designed to provide you with an immediate, high-value, and actionable skill: Reactive vs. Traditional APIs: Understand the architectural shift from blocking to Non-Blocking I/O . Master the fundamental differences between Traditional APIs and Reactive APIs for maximum scalability . Reactive Data Access & Benchmarking (R2DBC): Implement non-blocking data access using R2DBC drivers and Spring Data R2DBC repositories. Benchmark and prove the throughput and resource efficiency of R2DBC against Spring Data JPA . Reactive Controller Development: Master creating reactive controllers, handling requests and responses using Flux/Mono , and validating logic using the dedicated WebTestClient tool. Advanced Error Handling: Discover techniques for managing exceptions within reactive pipelines . Implement strategies to return meaningful, consistent error responses for a robust user experience. WebFilter Chaining & Cross-Cutting Concerns: Explore how to implement and chain multiple WebFilters for complex logic. Master pre-processing and post-processing requests and effectively share data across the reactive flow. Functional Programming in WebFlux: Leverage the power of lambda expressions to write concise, readable code. Build controllers using the modern functional endpoints (Router Functions) pattern. Building Non-Blocking Clients (WebClient): Learn to use WebClient to consume external APIs asynchronously using reactive streams . Handle asynchronous responses efficiently in a truly non-blocking manner. Streaming & Real-Time Data: Implement client-side and server-side data streaming for large file transfers using WebClient . Master backpressure handling for optimized performance. Enable real-time updates using Server-Sent Events (SSE) with Spring WebFlux . Optimizing for Performance (Microservice Communication): Implement Gzip compression for maximum bandwidth savings . Configure HTTP connection pooling to reduce connection overhead. Leverage HTTP/2 protocol and multiplexing for efficient concurrent communication . Integration Testing Mastery: Master end-to-end testing with WebTestClient , embedding rigorous testing practices throughout the entire course. By the end of this course, you will be the expert ready to build modern, high-throughput , and scalable Spring WebFlux microservices that maximize resource efficiency under load.
- Master Spring WebFlux: Learn how to build modern, scalable, and responsive web applications using Spring WebFlux.
- Embrace Reactive Programming: Understand the benefits of reactive programming for building efficient and scalable applications.
- Leverage R2DBC: Learn how to use R2DBC for reactive data access and improve application performance.
- Achieving High Performance & Scalability With HTTP2
- Build Reactive Controllers: Create reactive controllers with Spring WebFlux annotations and handle requests and responses efficiently.
- Implement Error Handling: Learn effective error handling strategies for a robust user experience.
Temario
UNIDAD 1 - Welcome: Why Master Spring WebFlux? · 1 leccionesUNIDAD 1 - Welcome: Why Master Spring WebFlux?
UNIDAD 1 - Welcome: Why Master Spring WebFlux?
- Before You Enroll
UNIDAD 2 - Architectural Shift: Blocking I/O vs Reactive Web · 12 leccionesUNIDAD 2 - Architectural Shift: Blocking I/O vs Reactive Web
UNIDAD 2 - Architectural Shift: Blocking I/O vs Reactive Web
- *** Resource ***: Up to date with Spring Boot 4.X
- Project Setup
- External Services
- Traditional vs Reactive API
- Traditional vs Reactive API - Demo
- Traditional vs Reactive API - Demo via Browser
- Exposing Streaming API
- Common Mistake Using Reactive Pipeline
- How Reactive Web Works - Step By Step
- FAQ - Should Entire Stack Be Reactive?
- Reactive Web is Resilient - Demo
- Summary
UNIDAD 3 - Reactive Data Access: Spring Data R2DBC · 20 leccionesUNIDAD 3 - Reactive Data Access: Spring Data R2DBC
UNIDAD 3 - Reactive Data Access: Spring Data R2DBC
- R2DBC - Introduction
- Connection String
- *** Resource *** - Database Initialization Scripts
- Project Setup
- Spring Data - Crash Course
- Customer Entity / Repository
- Step Verifier - Crash Course
- CRUD Using Repository - Part 1
- CRUD Using Repository - Part 2
- CRUD Using Repository - Part 3
- R2DBC - Show SQL
- *** Assignment *** - Price Range Query Method
- Pageable
- What About Complex Queries?
- *** Resource *** - SQL For Products Ordered By Customer
- Join Query Using @Query
- *** Resource *** - SQL For Projection
- Projection
- R2DBC Database Client
- Summary
UNIDAD 4 - R2DBC vs JDBC: Performance, Efficiency, and Resource Usage · 6 leccionesUNIDAD 4 - R2DBC vs JDBC: Performance, Efficiency, and Resource Usage
UNIDAD 4 - R2DBC vs JDBC: Performance, Efficiency, and Resource Usage
- R2DBC vs JDBC - Introduction
- [Performance Test] Throughput / Efficiency
- How R2DBC Works
- FAQ - Can I Use Spring Data JPA?
- Reactive Manifesto
- R2DBC Challenge
UNIDAD 5 - Implementing Reactive APIs: CRUD · 18 leccionesUNIDAD 5 - Implementing Reactive APIs: CRUD
UNIDAD 5 - Implementing Reactive APIs: CRUD
- Reactive CRUD APIs - Introduction
- FAQ - Do We Need DTOs?
- DTO / Entity / Repository
- Service Class Implementation
- Controller
- FAQ - @RequestBody Mono<T> vs T
- CRUD APIs Demo
- Mono/Flux - Response Entity
- Handling 4XX via Response Entity
- @Modifying Query
- Paginated Results
- CRUD APIs Demo
- WebTestClient - Introduction
- Integration Testing - Part 1
- Integration Testing - Part 2
- Integration Testing - Part 3
- POST / PUT - Body Publisher vs Body Value
- Summary
UNIDAD 6 - Input Validation and Reactive Error Handling · 11 leccionesUNIDAD 6 - Input Validation and Reactive Error Handling
UNIDAD 6 - Input Validation and Reactive Error Handling
- Problem Detail
- What About Bean Validation?
- Project Setup
- Application Exceptions
- Request Validator
- Validation - Emitting Error Signal
- @ControllerAdvice
- Demo via Postman
- *** Assignment ***
- Integration Tests
- Summary
UNIDAD 7 - WebFilter: Interception and Cross-Cutting Logic · 11 leccionesUNIDAD 7 - WebFilter: Interception and Cross-Cutting Logic
UNIDAD 7 - WebFilter: Interception and Cross-Cutting Logic
- WebFilter - Introduction
- WebFilter Chain - How It Works
- Authentication & Authorization Requirements
- WebFilter Implementation
- Attributes via WebFilter
- WebFilter Demo
- Accessing Attributes via @Controller
- Problem Detail - WebFilter Workaround
- *** Assignment ***
- Integration Tests
- Summary
UNIDAD 8 - Router Functions / Functional Endpoints · 16 leccionesUNIDAD 8 - Router Functions / Functional Endpoints
UNIDAD 8 - Router Functions / Functional Endpoints
- Functional Endpoints - Introduction
- Router Configuration - Part 1
- Request Handler
- Router Configuration - Part 2
- Input Validation / Error Handler
- Paginated Results
- Order Of The Routes
- Demo via Postman
- Integration Tests
- Multiple Router Functions
- Nested Router Functions
- What About WebFilters
- Request Predicates
- *** Assignment ***
- Functional / Request Predicates - Assignment Solution
- Summary
UNIDAD 9 - WebClient: Non-Blocking Microservice Communication · 18 leccionesUNIDAD 9 - WebClient: Non-Blocking Microservice Communication
UNIDAD 9 - WebClient: Non-Blocking Microservice Communication
- WebClient - Introduction
- Project Setup
- Simple GET
- Non-blocking Concurrent Requests
- [Optional] - How Event Loop Works
- URI Variables
- Streaming GET
- POST - Body Publisher vs Body Value
- Default Headers Configuration / Override
- Remote Service - Error Handling
- Retrieve / Exchange
- Query Params
- Basic Auth
- Bearer Auth
- Exchange Filter Function
- *** Assignment ***
- WebClient Attributes
- Summary
UNIDAD 10 - Reactive Data Streaming: High-Volume Uploads & Downloads · 15 leccionesUNIDAD 10 - Reactive Data Streaming: High-Volume Uploads & Downloads
UNIDAD 10 - Reactive Data Streaming: High-Volume Uploads & Downloads
- Streaming - Introduction
- Uploading Million Products - Usecase
- JSON Lines
- Project Setup
- Product Service
- Product Streaming Upload API
- Product Client
- Client Streaming Request - Demo
- @RequestBody - Non-Blocking Clarification
- 1 Million Products Upload - Demo
- *** Assignment *** - Download API
- *** Resource *** - FileWriter
- 1 Million Products Download - Demo
- What About Bidirectional Stream
- Summary
UNIDAD 11 - Real-Time Data Streaming: Server Sent Events (SSE) · 10 leccionesUNIDAD 11 - Real-Time Data Streaming: Server Sent Events (SSE)
UNIDAD 11 - Real-Time Data Streaming: Server Sent Events (SSE)
- Introduction
- Sink Configuration
- Emitting Items via Sink
- Exposing Streaming API
- SSE Demo
- Price Filter Implementation
- *** Resource *** - Index HTML
- Adding UI
- Price Filter Demo via UI
- Integration Tests
UNIDAD 12 - High Performance: Gzip, Connection Pooling, and HTTP/2 · 17 leccionesUNIDAD 12 - High Performance: Gzip, Connection Pooling, and HTTP/2
UNIDAD 12 - High Performance: Gzip, Connection Pooling, and HTTP/2
- Performance Optimization- Introduction
- gzip
- *** Resource *** - gzip Properties
- Enabling gzip
- gzip Demo
- Keep Alive / Connection Pooling
- Keep Alive / Connection Pooling - Project Setup
- *** Resource *** - Netstat Command
- HTTP Connections via netstat
- Configuring Connection Pool Size
- Pool Size Calculation
- SocketException - Too Many Open Files Issue
- HTTP2 Introduction
- HTTP2 - Demo
- SubscribeOn - For Blocking IO
- Summary
- Performance Optimization Challenge
UNIDAD 13 - End-to-End: The Complete Reactive Microservices Project · 34 leccionesUNIDAD 13 - End-to-End: The Complete Reactive Microservices Project
UNIDAD 13 - End-to-End: The Complete Reactive Microservices Project
- Trading Platform - Introduction
- [Customer Portfolio] - *** Resource *** - Database Initialization Scripts
- [Customer Portfolio] - Requirements Discussion
- [Customer Portfolio] - Project Setup
- [Customer Portfolio] - DTO / Entity / Repository
- [Customer Portfolio] - Application Exceptions
- [Customer Portfolio] - Customer Information Service
- [Customer Portfolio] - Trade Buy Request Handler
- [Customer Portfolio] - Trade Sell Request Handler
- [Customer Portfolio] - Controller
- [Customer Portfolio] - Exception Handler
- [Customer Portfolio] - Integration Tests - Part 1
- @Transactional - H2 DB Warning
- [Customer Portfolio] - Integration Tests - Part 2
- [Aggregator] - Introduction
- [Aggregator] - Project Setup
- [Aggregator] - Request Validator
- [Aggregator] - Stock Service Client
- [Aggregator] - Hot Price Stream
- [Aggregator] - Customer Service Client
- [Aggregator] - Customer Portfolio Service
- [Aggregator] - Exposing Trade Platform APIs
- [Aggregator] - @ControllerAdvice
- [Aggregator] - Configuration
- MockServer - Introduction
- *** Resource *** - MockServer Dependency
- [Aggregator] - Integration Test - Setup
- [Aggregator] - Mocking Customer Service
- [Aggregator] - Integration Tests - Customer Information API Test
- [Aggregator] - Integration Tests - Stock Service Stream API Test
- [Aggregator] - Integration Tests - Customer Trade API Test
- Demo via Postman
- *** Resource **** - Index HTML
- Trading Platform - Final Demo
UNIDAD 14 - Role Play · 1 leccionesUNIDAD 14 - Role Play
UNIDAD 14 - Role Play
- Mentoring a Team Member on Spring WebFlux Migration
UNIDAD 15 - What's Next? · 2 leccionesUNIDAD 15 - What's Next?
UNIDAD 15 - What's Next?
- What's Next?
- Reactive Course Series
UNIDAD 16 - Bonus Section / Articles · 3 leccionesUNIDAD 16 - Bonus Section / Articles
UNIDAD 16 - Bonus Section / Articles
- R2DBC - Entity Callback
- Spring WebFlux - File Upload Example
- Spring WebFlux Security
Tu certificado lo emite la SEP, no solo una plataforma
Al demostrar la competencia recibes un certificado emitido por la Secretaría de Educación Pública a través del Gobierno del Estado de México: un documento oficial que puedes presentar con confianza ante cualquier empleador o institución.
Tu certificado con INEC
- Lo emite la Secretaría de Educación Pública (SEP), a través del Gobierno del Estado de México
- Documento oficial con folio verificable en línea
- Lo otorga la Universidad Tecnológica Fidel Velázquez
Otras plataformas en línea
- Constancia privada emitida por la misma plataforma
- Solo acredita horas cursadas o asistencia
- Sin respaldo de una autoridad educativa
Tu itinerario, de la inscripción al certificado
- 1
Inscripción con pago único
Pagas $2,800 MXN una sola vez y entras de inmediato al curso.
- 2
Estudias a tu ritmo
16 unidades con videos, lecturas y actividades, disponibles 24/7 durante 12 meses.
- 3
Cuestionarios por unidad
2 cuestionarios para comprobar lo aprendido.
- 4
Certificado
Emitido por la SEP a través del Gobierno del Estado de México, con folio verificable.
Un certificado oficial de la SEP
- Emitido por la Secretaría de Educación Pública (SEP), a través del Gobierno del Estado de México. No es una constancia privada: es un documento oficial, y ese respaldo marca la diferencia frente a otras plataformas en línea.
- Contenido impartido por Vinoth Selvaraj.
- Folio y QR verificables para compartirlo con quien te contrate.
Empieza hoy, a tu ritmo
Un solo pago y acceso inmediato al curso completo durante 12 meses.
- 16 unidades · 195 lecciones · 60 h
- 12 meses de acceso
- 2 cuestionarios de evaluación
- Certificado emitido por la SEP (Gob. del Estado de México) con folio verificable
Sobre tu inscripción
¿Cómo es el pago?
Un solo pago de $2,800 MXN. No hay mensualidades ni cargos recurrentes.
¿Cuánto tiempo tengo acceso?
12 meses desde tu inscripción, 24/7, para avanzar a tu ritmo.
¿Quién imparte el contenido?
El curso es impartido por Vinoth Selvaraj; INEC gestiona tu inscripción, evaluación y certificado.
¿Qué pasa cuando vence mi acceso?
Puedes renovar tu cuenta tú mismo desde la plataforma, sin trámites ni esperas.


