Search code examples
project-reactorreactive-streams

Reactive Streams vs Reactor pattern?


I wonder what is the relationship between Reactive Streams (defined by Reactive manifesto) and Reactor pattern (https://en.wikipedia.org/wiki/Reactor_pattern). I read that Project Reactor, which I suppose is an implementation of the Reactor pattern, implements Reactive Streams API. But how does Project Reactor translate Reactor pattern's concepts to streams concepts. How are abstractions from those 2 domains linked?


Solution

  • Project Reactor, at least in its current 3rd generation, is solely Reactive Streams based. It doesn't implement the Reactor pattern specifically.

    In fact, you'll notice here on StackOverflow that [project-reactor] tag is distinct from the [reactor] tag for the pattern (yet the project-reactor tag has a score of 2355 while the other has 613, whatever that means).

    So there is no meaningful relationship between the library and the pattern.