Get in Touch

Course Outline

Foundations of Reactive Programming

  • Contrasting blocking versus non-blocking system architectures
  • An overview of the Reactive Streams specification
  • Key benefits and ideal use cases

Project Reactor: Mono and Flux

  • Roles of Publisher, Subscriber, and Subscription
  • Practical usage of Mono and Flux types
  • Managing errors and handling backpressure

Configuring Spring WebFlux

  • Initiating a Spring Boot WebFlux project
  • Managing project dependencies
  • Comparing WebClient with RestTemplate

Creating Reactive REST Endpoints

  • Establishing routes and defining handlers
  • Utilizing RouterFunction for request mapping
  • Implementing reactive controllers and data binding

Database Integration Strategies

  • Applying R2DBC for reactive SQL operations
  • Interacting with MongoDB using reactive patterns
  • Consuming external APIs in a reactive manner

Validating WebFlux Applications

  • Creating unit tests using StepVerifier
  • Conducting integration tests with WebTestClient
  • Simulating data sources and external services

Optimizing Performance and Best Practices

  • Managing threading and scheduling within WebFlux
  • Techniques for debugging reactive code flows
  • Architectural patterns for scalable reactive applications

Deployment and Production Scenarios

  • Strategies for deploying WebFlux applications
  • Considerations for CI/CD pipelines
  • Real-world case studies and production usage examples

Recap and Future Directions

Requirements

  • A solid grasp of Java programming principles
  • Practical experience in web application development
  • Knowledge of HTTP protocols and RESTful API architectures

Target Audience

  • Java developers taking their first steps into reactive programming
  • Technical leads and architects evaluating Spring WebFlux for their stack
  • Backend engineers aiming to engineer non-blocking web solutions
 35 Hours

Number of participants


Price per participant

Testimonials (3)

Upcoming Courses

Related Categories