Akka is a toolkit for building highly concurrent, distributed, and resilient message-driven applications for Java and Scala.
Simpler Concurrent & Distributed Systems
Resilient by Design
Building on the principles of The Reactive Manifesto Akka allows you to write systems that self-heal and stay responsive in the face of failures.
Up to 50 million msg/sec on a single machine. Small memory footprint; ~2.5 million actors per GB of heap.
Elastic & Decentralized
Distributed systems without single points of failure. Load balancing and adaptive routing across nodes. Event Sourcing and CQRS withCluster Sharding. Distributed Data for eventual consistency using CRDTs.
Reactive Streaming Data
Asynchronous non-blocking stream processing with backpressure. Fully async and streaming HTTP server and client provides a great platform for building microservices. Streaming integrations with Alpakka.