Programmation Réactive avec WebFlux

Construire des flux réactifs avec Spring

  • Filière :

    Développement logiciel

  • Sous-filière :

    Java & XML

  • Référence

    JF-PRW

  • Durée

    3 jours (21 h)

  • Prix par personne HT

    2 050 € HT

Objectifs pédagogiques

  • Comprendre Reactor (Mono & Flux et leurs opérateurs)
  • Réaliser un microservices réactif de l’api REST jusqu’à la couche de persistance
  • Savoir implémenter un client Http réactif avec le WebClient
  • Monitorer son système réactif
  • Mettre en place des tests unitaires et d’intégrations

Public cible

  • Développeurs Back-end

Pré-requis

Connaissances du framework Spring Boot
Connaissances de Java 8

Programme de la formation

Introduction

  • La programmation réactive
  • Le Manifest
  • Systèmes non bloquants
  • Les patterns
  • Principe de l’Event-Loop

En Java

  • Reactive Stream et la backpressure
  • Les interfaces Reactives de Java 9
  • Tour d’horizon des Frameworks
  • Java NIO
  • Netty

Spring WebFlux

  • Présentation
  • Architecture
  • Cas d’utilisation

Reactor

  • Flux et Mono
  • Séquences et Souscriptions
  • Les opérations : reduce, zip, merge, flatmap, etc
  • La gestion d’erreur
  • La backpressure
  • Le modèle de thread scheduling de Reactor

API Rest Reactive avec WebFlux

  • WebFlux vs Web MVC
  • Cas d’usage
  • Les Router et les Handler
  • La Gestion d’erreur

Accéder aux données de façon réactive

  • Avec R2DBC pour les bases relationnelles
  • Reactive Repository et le NoSQL
  • Alternatives pour les repositories synchrones

Le WebClient

  • Appeler des API Rest de façon réactive
  • Gestion des erreurs et du Retry
  • Configuration proxy et OAuth2

Monitorer son application réactive

  • Spring Boot Actuator
  • Micrometer
  • Tracing avec Sleuth/Zipkin

RSocket

  • Cas d’usage
  • RSocket vs gRPC
  • RSocket et Spring

Tester son application réactive

  • StepVerifier
  • WebTestClient

Conclusion

Qualité

Cette formation est accessible aux personnes en situation de handicap, nous contacter en cas de besoin d’informations complémentaires.

Programme mis à jour le