Book Image

Mastering Akka

By : Christian Baxter
Book Image

Mastering Akka

By: Christian Baxter

Overview of this book

For a programmer, writing multi-threaded applications is critical as it is important to break large tasks into smaller ones and run them simultaneously. Akka is a distributed computing toolkit that uses the abstraction of the Actor model, enabling developers to build correct, concurrent, and distributed applications using Java and Scala with ease. The book begins with a quick introduction that simplifies concurrent programming with actors. We then proceed to master all aspects of domain-driven design. We’ll teach you how to scale out with Akka Remoting/Clustering. Finally, we introduce Conductr as a means to deploy to and manage microservices across a cluster.
Table of Contents (17 chapters)
Mastering Akka
Credits
About the Author
Acknowledgments
About the Reviewer
www.PacktPub.com
Preface

Comparing Akka HTTP to Spray


Before Akka HTTP came about, the most popular choice for a HTTP framework to use with Akka was Spray. The Akka team liked what they saw with Spray, so they decided to collaborate with the Spray team to create a new back-pressure aware I/O layer for Akka. This collaboration went so well that the Akka team decided to go all in on an internal HTTP framework which would be based on Spray. Development was to stop in Spray and continue in Akka HTTP. Developers could still use Spray, but any new features and enhancements would only be available within Akka HTTP.

So Akka HTTP has its roots in Spray, and for the most part the APIs for inbound and outbound HTTP are the same across the two libraries. This means that it's pretty easy to migrate from Spray to Akka HTTP. There are some key differences though, things that you should be aware of when making the switch from Akka HTTP to Spray. I'll do my best to highlight the most important differences between the two frameworks...