Get in Touch

Course Outline

Introduction to Reactive Programming

  • Comparing blocking and non-blocking systems.
  • The Reactive Streams specification.
  • Key advantages and common use cases.

Project Reactor and Mono/Flux

  • Understanding Publisher, Subscriber, and Subscription.
  • Utilizing Mono and Flux effectively.
  • Managing error handling and backpressure.

Setting Up Spring WebFlux

  • Initiating a Spring Boot WebFlux project.
  • Configuring necessary dependencies.
  • Comparing WebClient and RestTemplate.

Building Reactive REST APIs

  • Defining routes and handlers.
  • Implementing request mapping via RouterFunction.
  • Working with reactive controllers and data binding.

Integrating with Databases

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

Testing WebFlux Applications

  • Creating unit tests using StepVerifier.
  • Performing integration testing with WebTestClient.
  • Simulating data sources and services.

Performance and Best Practices

  • Managing threading and scheduling in WebFlux.
  • Troubleshooting reactive code.
  • Applying design patterns for scalable reactive applications.

Deployment and Real-World Examples

  • Deploying WebFlux applications.
  • Considering CI/CD pipeline requirements.
  • Reviewing case studies and production usage.

Summary and Next Steps

Requirements

  • A solid understanding of Java programming.
  • Prior experience in web application development.
  • Familiarity with HTTP protocols and RESTful API design.

Target Audience

  • Java developers beginning their journey with reactive programming.
  • Technical leads and architects evaluating Spring WebFlux for their projects.
  • Backend engineers aiming to construct non-blocking web applications.
 35 Hours

Number of participants


Price per participant

Testimonials (3)

Upcoming Courses

Related Categories