Akka Reactive Streams
Akka Streams have these key properties:
- They implement the Reactive Streams specification, whose three main goals backpressure, async and non-blocking boundaries and interoperability between different implementations do fully apply for Akka Streams too.
- They provide an abstraction for an evaluation engine for the streams, which is called
Materializer
. - Programs are formulated as reusable building blocks, which are represented as the three main types
Source
,Sink
andFlow
. The building blocks form a graph whose evaluation is based on theMaterializer
and needs to be explicitly triggered.
In the following a deeper introduction in how to use the three main types shall be given.