Akka HTTP is a modern toolkit for all things HTTP in Scala. It features a fully asynchronous, non-blocking, and streaming implementation of HTTP for the client and the server side. Its basis is a typed, immutable data model of HTTP primitives like headers, methods, status codes, and content types. The HTTP engine itself is built on top of Akka Stream, a new library for versatile, asynchronous stream processing. A high-level routing DSL provides a developer-friendly API to compose your REST-API from a rich library of predefined routing components.
In this tutorial we will walk through the basic elements of the library and try to build a minimal server application which could serve as a starting point for your own projects.
Some knowledge of Scala syntax would be advantageous.
Participants should clone this repository (to be filled with material by February 17) prior to the tutorial:
Johannes has been writing Scala code as a freelancer for quite a while. For the last 3 years, he has worked on the open source Akka HTTP library and its predecessor spray.io. In the process, he learned to like analyzing asynchronously running systems and solving performance issues across the whole stack.