search menu icon-carat-right cmu-wordmark

Reactive for the Impatient

May 2019 Presentation

This presentation covers differences between reactive programming and reactive systems and the strength and weaknesses of several Java-based reactive frameworks.


Software Engineering Institute




This talk presents a few of the major Java-based reactive frameworks and toolkits in the market today, such as RxJava, Spring Reactor, Akka, and Vert.x. It will start by going over the basic tenets of reactive systems and some examples of the problems that these systems aim to solve. It will discuss the two most commonly used Java frameworks for implementing reactive coding, RxJava and Spring Reactor, and will show some code samples. It will then bring the audience to the next level of “reactivity” by introducing two reactive frameworks, Akka and Vert.x, which are usually used for implementing reactive microservices. It will draw some comparisons between these two frameworks and cite some real-life examples of their usages.

The takeaways for the audience will be an understanding of the key differences between reactive programming versus reactive systems, and the strength and weaknesses of each of the surveyed frameworks.