Reactor Reactor

Reactor est une librairie réactive de quatrième génération, pour coder des applications non bloquantes utilisant la JVM basée sur les spécifications des Reactives Streams.

Reactor est plus léger que RxJava et a moins d’API, mais il couvre la plupart des cas d’utilisation. Pour les cas extrêmes, il est possible de mixer Reactor avec RxJava. RxJava

La librairie Reactor est composée de trois parties :

  • Le cœur réactif (reactive core) est centré sur les traitements non bloquants et interagit directement avec les API fonctionnelles Java 8, CompletableFuture, les API Stream et Duration.

  • Les séquences typées [0|1|N] sont rendues disponibles via deux API de compositions : Flux [N] et Mono [0|1].

  • Les entrées/sorties non bloquantes sont optimisées pour les architectures à microservices, et comprennent un mécanisme de rétropropagation de la pression relative à la charge (backpressure network engine) pour le HTTP (UDP, TCP et WebSocket). Les encodages et décodages réactifs sont supportés.

Plutôt que d’allouer de multiples threads dédiés pour la parallélisation, Reactor adopte une approche basée sur la séquentialisation des traitements sur un nombre limité de threads, ce qui permet d’anticiper plus facilement le comportement des applications soumises à de fortes charges.

Reactor expose des flux qui se combinent avec Spring, RxJava...

Pour consulter la suite, découvrez le livre suivant :
couv_EPREAJASP.png
60-signet.svg
En version papier
20-ecran_lettre.svg
En version numérique
41-logo_abonnement.svg
En illimité avec l'abonnement ENI
130-boutique.svg
Sur la boutique officielle ENI
Précédent
Serveur WebSocket
Suivant
Mono et Flux