This document introduces Akka, an open-source toolkit for building distributed, concurrent, and resilient message-driven applications for Java and Scala. It discusses how application requirements have changed to require clustering, concurrency, elasticity, and resilience. Akka uses an actor model with message-driven actors that can be distributed and made fault-tolerant. The document provides examples of creating and communicating between actors using messages, managing failures with supervision, and load balancing with routers.