Le patron de conception Reactor est destiné à permettre le traitement événementiel dans un environnement concurrentiel, où les événements peuvent provenir de sources diverses. Son fonctionnement est proche de celui du design pattern Observateur, mais à la différence de celui-ci, il est capable d'accepter plusieurs sources d'événements.
Fonctionnement Le pattern est basé sur une boucle de démultiplexage des événements redirigeant ceux-ci vers un ou des modules de traitement.
Utilité Le pattern reactor peut être une bonne solution de départ pour les problématiques de la programmation concurrentielle ainsi que la gestion des événements.
Implémentations Le patron de conception Reactor a été implémenté dans plusieurs serveurs web, Serveur d'applications, et frameworks réseau:
C++
Adaptive Communication Environment
Q
kdb+
Java
Apache Cocoon Vert.x
Javascript
Node.js
Perl
Mojolicious
PHP
ReactPHP
Python
Twisted AsyncIO
Ruby EventMachine
Références
Catégorie:Patron de conception