Get in Touch

Course Outline

Intro to Reactive Programming

  • Contrasting blocking and non-blocking systems
  • The Reactive Streams specification
  • Key benefits and common use cases

Project Reactor and Mono/Flux

  • Roles of Publisher, Subscriber, and Subscription
  • Utilising Mono and Flux
  • Managing errors and backpressure

Configuring Spring WebFlux

  • Initiating a Spring Boot WebFlux project
  • Setting up required dependencies
  • Comparing WebClient and RestTemplate

Developing Reactive REST APIs

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

Database Integration

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

Testing WebFlux Applications

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

Performance and Best Practices

  • Threading and scheduling within WebFlux
  • Diagnosing issues in reactive code
  • Design patterns for highly scalable reactive apps

Deployment and Real-World Scenarios

  • Deploying WebFlux applications
  • CI/CD pipeline considerations
  • Case studies and production environments

Conclusion and Subsequent Steps

Requirements

  • A foundational knowledge of Java programming
  • Prior experience in web application development
  • Familiarity with HTTP protocols and RESTful APIs

Target Audience

  • Java developers who are new to reactive programming concepts
  • Technical leads and architects looking to explore Spring WebFlux
  • Backend engineers aiming to construct non-blocking web applications
 35 Hours

Number of participants


Price per participant

Testimonials (3)

Provisional Upcoming Courses (Require 5+ participants)

Related Categories