Get in Touch

Course Outline

Foundations of Reactive Programming

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

Project Reactor and Mono/Flux

  • Understanding Publishers, Subscribers, and Subscriptions
  • Utilizing Mono and Flux types
  • Managing error handling and backpressure mechanisms

Initializing Spring WebFlux

  • Generating a Spring Boot WebFlux project
  • Setting up necessary dependencies
  • Comparing WebClient and RestTemplate functionality

Developing Reactive REST APIs

  • Defining application routes and handlers
  • Implementing request mapping via RouterFunction
  • Utilizing reactive controllers and data binding techniques

Database Integration Strategies

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

Validating WebFlux Applications

  • Creating unit tests using StepVerifier
  • Performing integration tests with WebTestClient
  • Mocking various data sources and services

Optimizing Performance and Best Practices

  • Managing threading and scheduling within WebFlux
  • Techniques for debugging reactive code
  • Design patterns for building scalable reactive applications

Deployment and Practical Applications

  • Strategies for deploying WebFlux applications
  • Considerations for CI/CD pipelines
  • Analysis of case studies and production usage

Conclusion and Future Directions

Requirements

  • A solid foundation in Java programming
  • Practical experience in developing web applications
  • Knowledge of HTTP protocols and RESTful API structures

Target Audience

  • Java developers entering the realm of reactive programming
  • Technical leads and architects evaluating Spring WebFlux capabilities
  • Backend engineers focused on creating non-blocking web solutions
 35 Hours

Testimonials (3)

Upcoming Courses

Related Categories