Project Reactor logo

Project Reactor

Library for building non-blocking applications on JVM
185
81
+ 1
0

What is Project Reactor?

It is a fourth-generation Reactive library for building non-blocking applications on the JVM based on the Reactive Streams Specification. It is a fully non-blocking foundation with efficient demand management. It directly interacts with Java functional API, Completable Future, Stream and Duration.
Project Reactor is a tool in the Java Tools category of a tech stack.

Who uses Project Reactor?

Companies
11 companies reportedly use Project Reactor in their tech stacks, including Backend, Edgelab, and immmr.

Developers
81 developers on StackShare have stated that they use Project Reactor.

Project Reactor Integrations

Decisions about Project Reactor

Here are some stack decisions, common use cases and reviews by companies and developers who chose Project Reactor in their tech stack.

Needs advice
on
AkkaAkkaProject ReactorProject Reactor
and
RxJavaRxJava

I am working on a project to read data (millions of data) from JMS queue, process the data, and push it to another queue. I am new to Java world, and I have been reading about Spring, Project Reactor, ReactiveRx, etc., for the last couple of days. I am looking for a framework that is easy to use, has less ramp-up time, thread-safety, non-blocking I/O, and less latency. Based on my reading, I am leaning towards ProjectReactor since it has integration with Spring Boot, and it directly interacts with Java functional API, Completable Future, Stream, and Duration. Also, later on, I may have to extend this to read from a different source, so the code should be extensible.

I would like to get thoughts/advice on this.

See more

Project Reactor's Features

  • Fully non-blocking and provides efficient demand management. It directly interacts with Java's functional API, CompletableFuture, Stream, and Duration
  • Efficient Message Passing
  • Well-suited for a microservices architecture, it offers backpressure-ready network engines for HTTP (including Websockets), TCP, and UDP

Project Reactor Alternatives & Comparisons

What are some alternatives to Project Reactor?
RxJava
A library for composing asynchronous and event-based programs by using observable sequences for the Java VM.
Akka
Akka is a toolkit and runtime for building highly concurrent, distributed, and resilient message-driven applications on the JVM.
Spring
A key element of Spring is infrastructural support at the application level: Spring focuses on the "plumbing" of enterprise applications so that teams can focus on application-level business logic, without unnecessary ties to specific deployment environments.
JavaScript
JavaScript is most known as the scripting language for Web pages, but used in many non-browser environments as well such as node.js or Apache CouchDB. It is a prototype-based, multi-paradigm scripting language that is dynamic,and supports object-oriented, imperative, and functional programming styles.
Git
Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.
See all alternatives

Project Reactor's Followers
81 developers follow Project Reactor to keep up with related blogs and decisions.