The reactor software design pattern is an event handling strategy that can respond to many potential service requests concurrently. The pattern's key component is an event loop, running in a single thread or process, which demultiplexes incoming requests and dispatches them to the correct request handler.[1]
By relying on event-based mechanisms rather than blocking I/O or multi-threading, a reactor can handle many concurrent I/O bound requests with minimal delay.[2]
A reactor also allows for easily modifying or expanding specific request handler routines, though the pattern does have some drawbacks and limitations.[1]
With its balance of simplicity and scalability, the reactor has become a central architectural element in several server applications and software frameworks for networking. Derivations such as the multireactor and proactor also exist for special cases where even greater throughput, performance, or request complexity are necessary.[1][2][3][4]
^ abcSchmidt, Douglas C. (1995). "Chapter 29: Reactor: An Object Behavioral Pattern for Demultiplexing and Dispatching Handles for Synchronous Events" (PDF). In Coplien, James O. (ed.). Pattern Languages of Program Design. Vol. 1 (1st ed.). Addison-Wesley. ISBN 9780201607345.
^ abDevresse, Adrien (20 June 2014). "Efficient parallel I/O on multi-core architectures" (PDF). 2nd Thematic CERN School of Computing. CERN. Archived (PDF) from the original on 8 August 2022. Retrieved 14 September 2023.
^Escoffier, Clement; Finnegan, Ken (November 2021). "Chapter 4. Design Principles of Reactive Systems". Reactive Systems in Java. O'Reilly Media. ISBN 9781492091721.
^Garrett, Owen (10 June 2015). "Inside NGINX: How We Designed for Performance & Scale". NGINX. F5, Inc. Archived from the original on 20 August 2023. Retrieved 10 September 2023.
The reactor software design pattern is an event handling strategy that can respond to many potential service requests concurrently. The pattern's key...
has terminated. The proactor pattern can be considered to be an asynchronous variant of the synchronous reactorpattern. Operation specific actors: The...
reaction Reactor (software), a physics simulation engine The reactor design pattern, a design pattern used in concurrent programming Reactor (magazine)...
nuclear reactor is a design of a molten salt reactor with a graphite moderator, proposed by the US-based Thorcon company. These nuclear reactors are designed...
load balancers. Event-driven architecture Event-driven programming Reactorpattern "The C10K problem". Archived from the original on 2013-07-22. Liu,...
A boiling water reactor (BWR) is a type of light water nuclear reactor used for the generation of electrical power. It is the second most common type of...
Briggs–Rauscher reaction. In industrial applications such as chemical reactors, pattern formation can lead to temperature hot spots which can reduce the yield...
logo of the library. Free and open-source software portal libevent Reactorpattern "Release v1.48.0: 2024.02.07, Version 1.48.0 (Stable)". "The libuv...
channel-type reactor") is a class of graphite-moderated nuclear power reactor designed and built by the Soviet Union. It is one of two reactor types to be...
core melt accident, meltdown or partial core melt) is a severe nuclear reactor accident that results in core damage from overheating. The term nuclear...
scalable applications for Ruby. It provides event-driven I/O using the reactorpattern. EventMachine is the most popular library for concurrent computing...
TCP and UDP socket servers. Netty includes an implementation of the reactorpattern of programming. Free Software portal WildFly, the JBoss EAP upstream...
In software engineering, a design pattern describes a relatively small, well-defined aspect (i.e. functionality) of a computer program in terms of how...
important for the stability of the flux pattern and geometrical power distribution, especially in physically large reactors. Because 95% of the xenon-135 production...
ITER (initially the International Thermonuclear Experimental Reactor, iter meaning "the way" or "the path" in Latin) is an international nuclear fusion...
The plug flow reactor model (PFR, sometimes called continuous tubular reactor, CTR, or piston flow reactors) is a model used to describe chemical reactions...
reactor is a chemical reactor that belongs to the general class of multiphase reactors, which consists of three main categories: trickle bed reactor (fixed...
of the reactor was uranium, and surrounding this was graphite, both of which were vaporized by the hydrogen explosion that destroyed the reactor and breached...
Nuclear Research Reactor (MITR) serves the research purposes of the Massachusetts Institute of Technology. It is a tank-type 6 megawatt reactor that is moderated...
by zero or more transformers, and finally a serializer. Reactorpattern - the design pattern that Cocoon is based on. XProc - a W3C Standard for modelising...
A microreactor or microstructured reactor or microchannel reactor is a device in which chemical reactions take place in a confinement with typical lateral...