Java Reactive Programming
Reactive Programming using Project Reactor and Spring. Build non-blocking, event-driven applications that are resilient, responsive, and scalable using the reactive programming paradigm.

Overview
Reactive programming represents a paradigm shift in how we build applications. By embracing non-blocking I/O and event-driven architecture, reactive applications can handle more concurrent users with fewer resources while providing better responsiveness and resilience.
This course provides a comprehensive understanding of reactive programming concepts and their implementation using Project Reactor and Spring WebFlux. You will learn to think reactively, work with Mono and Flux types, handle backpressure, and build complete reactive applications. Through practical exercises, you will understand when and how to apply reactive patterns to solve real-world challenges.
Objectives
The main objectives of the Java Reactive Programming course are:
- Understanding reactive programming principles and the Reactive Manifesto
- Mastering Project Reactor: Mono, Flux, and reactive operators
- Building reactive REST APIs with Spring WebFlux
- Implementing reactive data access with R2DBC and reactive MongoDB
- Understanding backpressure and flow control strategies
- Testing reactive applications with StepVerifier
- Error handling and resilience patterns in reactive systems
Duration and Schedule
The standard course duration is 4 days, with 6 or 7 hours of teaching each day. Additional days can be added for advanced topics and hands-on workshops.
The scheduling per day:
- Day 1: Reactive fundamentals, Reactive Streams specification, and Project Reactor basics
- Day 2: Reactive operators, transformation, filtering, and combining streams
- Day 3: Spring WebFlux, reactive REST APIs, and reactive data access
- Day 4: Testing, error handling, backpressure, and practical workshop
Target Audience
This course is designed for developers ready to embrace reactive programming:
- Java Developers - wanting to learn reactive programming paradigms
- Spring Developers - looking to adopt Spring WebFlux
- Backend Developers - building high-throughput, scalable services
- Architects - designing reactive microservices architectures
- Teams - transitioning from blocking to non-blocking architectures
Go Reactive
Contact us to learn how reactive programming can improve your application performance

Prerequisites
Here are the prerequisites for the Java Reactive Programming course:
- Strong Java knowledge: proficiency with Java 8+ features, especially lambdas and streams
- Spring experience: familiarity with Spring Framework basics
- Understanding of asynchronous concepts: callbacks, futures, and concurrent programming
- REST API knowledge: experience building or consuming REST services
Testimonials
Contact Us
Please send us a message about any inquiry you may have
