Be the first to like this
After realizing the power of the Akka Streams API for building scalable, reliable, and resilient systems for streaming data, people are often confused as to how the Akka Streams API relates to Akka Actors. I will demonstrate how actors and streams solve complimentary problems. I will start with the basic patterns for interfacing both streams with actors, and actors with streams. Then I will show how actors compliment streams with regard to error handling, location transparency, and the distribution of workloads. I will demonstrate a large number of streaming workloads running in an Akka Cluster, by leveraging Cluster Sharding and Distributed Data. I will conclude by showing how an actor can use Akka Persistence to implement an Event Sourcing model for an Akka Stream. Understanding how to integrate Akka Actors and the Akka Streams API is essential for building scalable, reliable, and resilient distributed-applications to handle streaming workloads.