Get in Touch

Course Outline

Introduction to Reactive Programming

  • Comparing blocking and non-blocking architectures
  • The Reactive Streams specification
  • Key advantages and applicable scenarios

Project Reactor: Mono and Flux

  • Core concepts: Publisher, Subscriber, and Subscription
  • Practical usage of Mono and Flux types
  • Managing errors and implementing backpressure

Configuring Spring WebFlux

  • Initializing a Spring Boot WebFlux project
  • Managing and configuring project dependencies
  • Comparing WebClient and RestTemplate capabilities

Developing Reactive REST APIs

  • Establishing routes and request handlers
  • Mapping requests using RouterFunction
  • Implementing reactive controllers and data binding

Database Integration

  • Utilizing R2DBC for reactive SQL operations
  • Interacting with MongoDB in a reactive manner
  • Connecting to external APIs using reactive patterns

Testing WebFlux Applications

  • Authoring unit tests using StepVerifier
  • Conducting integration tests with WebTestClient
  • Simulating data sources and service calls

Performance Optimization and Best Practices

  • Managing threading and scheduling within WebFlux
  • Debugging complex reactive code paths
  • Architectural patterns for scalable reactive applications

Deployment and Practical Use Cases

  • Deploying WebFlux applications to production environments
  • Considerations for CI/CD pipelines
  • Real-world case studies and production usage examples

Recap and Future Directions

Requirements

  • A solid grasp of Java programming fundamentals
  • Prior experience in web application development
  • Knowledge of HTTP protocols and RESTful API structures

Target Audience

  • Java developers looking to enter the field of reactive programming
  • Technical leads and architects evaluating Spring WebFlux for new projects
  • Backend engineers aiming to create non-blocking web solutions
 35 Hours

Number of participants


Price per participant

Testimonials (3)

Upcoming Courses

Related Categories