Reactive
Usually, the term reactive is used in the context of reactive programming and reactive systems. Reactive programming (which is also called Rx programming) is based on asynchronous data streams (which is also called reactive streams). It was introduced as a Reactive Extension (RX) of Java, which is also called RxJava (http://reactivex.io). Later, RX support was added to Java 9 in the java.util.concurrent
package. It allows a Publisher
to generate a stream of data to which a Subscriber
can asynchronously subscribe.
One principal difference between reactive streams and standard streams (which are also called Java 8 streams and are located in the java.util.stream
package) is that a source (publisher) of the reactive stream pushes elements to subscribers at its own rate, while in standard streams, a new element is pulled and emitted only after the previous one has been processed (in fact, it acts like a for
loop).
As you have seen, we were able to process data asynchronously...