Influenced by the eponymous design pattern, the
project is set to be part of the company’s big data wranglerSpring XD, and is designed for event and
data-driven applications which require very high
throughput.

Reactor 1.0.0 M1 brings in support for Spring
and Groovy, as you’d expect being SpringSource’s major projects,
and also includes reactive composition helpers Stream and Promise.
Reactor’s composition method is essentially split into two parts: a
Deferred which publishes and the Stream, which consumes. Users may
attach handlers onto a Stream to process the data in a simple
manner.

Project lead Jon Brisbinnotesseveral inspirations for the
Composables within Reactor, namely Netflix’s asynchronous
libraryRxJavaand the new JDK 8 Stream API.

“Reactor is designed, from the ground up, to be
a high-performance, high-scale platform for building the next
generation of big data applications” Brisbin explained, before
adding that Reactor is capable of processing “millions” of events
per second.

M1 also contains an “easy-to-use” TCP client and
server, which is powered by the non-blocking I/O server Netty,
making it possible to process so many events that quickly. It also
supports JSON right off the bat. Maven artifacts are available
through SpringSource’s dedicated Artifactory repository, plus you
can pull Reactor into a Gradle project should you wish.

Some might say that Reactor is arriving too late
to make an impact, with numerous asynchronous event-driven
frameworks already out there, or indeed a chain reaction from
recent events.

VMware of course backed the development of the
now-Eclipse-housed project Vert.x, which hit a 2.0 version
yesterday, but SpringSource developers clarify that Reactor isn’t
in competition, as it doesn’t provide an entire stack, and had been
in internal incubation for longer than many thought.

Either way, Reactor should become a fundamental
cog in the Spring XD umbrella project. You can find all the
relevant code onGitHub.
If you’ve got more time on your hands, this session from Brisbin on
Reactor is well worth your time.