Reactive APIs of Java 9

Session abstract

Reactive programming is no longer an esoteric idea. Many libraries and tools have started providing excellent support for this programming style–so much so that Java 9 has embraced this idea by including it in the specification. This presentation takes a dive into what reactive programming looks like from the Java specification point of view. You’ll witness the creation of a small working example that illustrates the API and learn how to make use of it.


Name Title Company
Venkat Subramaniam President, Agile Developer Inc.

Session Info

Session type Track
Developer Session Core Java Platform

My Notes

Really full room here 🖖 Venkat is ever popular.

What’s Reactive Programming

The system should be :

  • Elastic
  • Message Driven

Don’t expose your database, expose your data.

In life and programming there are two things we should never share: toothbrush and database

  • Responsive
  • Resilient


Java 8 Streams


  • RxJava
  • Akka
  • Reactor
  • and more

Reactive Streams API

4 interfaces:

  • Publisher -> emit data
  • Subscriber -> listens to data

  • Subscription -> a session you have with a publisher
  • Processors -> intermediary stuff can be both Publisher and Subscriber (e.g. filter)

Java 9

Come to the party 7 years late. Oracle phenomenal job by creating a standard 😜

How do you use it in Java 9… use one of the existing libraries.
The standard is just a vote of approval.


Again a really good talk