Akka Platform Guide
This guide provides information to aid in understanding and using the Akka Platform and the Akka Cloud Platform.
Akka Platform is a toolkit for building highly concurrent systems that are scalable, highly efficient, and resilient by using Reactive Principles. The Akka Platform includes support for Akka, additional commercial components, and is available from Lightbend as a subscription . You can check out our five-part Akka Platform workshop for developers, for a guided, hands-on walkthrough of Akka Platform.
This guide is for developers, administrators, evaluators and dev/ops. For evaluators the guide will provide a solid demonstration the power and value available via Akka Platform and Akka Cloud Platform. For developers the guide focuses on getting you up and running by covering the basics of Microservices and Cloud deployment, as well as the fundamental concepts that underlay Reactive development. For administrators, and devops the guide lays out the requirements, operations and patterns of usage.
Whether you are new to Reactive principles, or an experienced Akka user, you will find something of use in this guide. The guide complements the Akka reference documentation , which presents all Akka features in detail.
Akka is a platform for designing scalable, resilient systems that span processor cores and networks. Akka allows you to focus on meeting business needs instead of writing low-level code to provide reliable behavior, fault tolerance, and high performance.
Multi-threaded behavior — without the use of low-level concurrency constructs like atomics or locks; relieving you from even thinking about memory visibility issues.
Transparent remote communication between systems and their components — relieving you from writing and maintaining difficult networking code.
Clustered, high-availability, elastic architecture, that scales on demand — enabling you to deliver a truly reactive system.
Akka’s use of the actor model provides a level of abstraction that makes it easier to write correct concurrent, parallel and distributed systems. The actor model spans the full set of Akka libraries, providing you with a consistent way of understanding and using them.
Why use Akka Cloud Platform?
Satisfy easy-to-deploy and operational needs for Development and SRE teams
Reduce implementation time for integrating with cloud services
Get started without business barriers
What does Akka Cloud Platform provide?
Integrated Telemetry — provides insight into applications built with Lightbend technologies and integrates with popular monitoring tools
Ops/DevOps tooling — Simple deployment and scaling of Kubernetes-powered Akka applications
Simple integration paths — Provided for relevant cloud services (for example, Kafka, Cassandra, data stores)
Available through popular Cloud Marketplaces:
Optional Pay-as-you-go, or custom pricing
Integrated legal, purchasing, and billing with the marketplaces
For a code-first experience, have a look at the Implementing Microservices with Akka tutorial. The tutorial walks you through an example project and explains how features from the Akka ecosystem connect to build Reactive Systems. It will point you to the relevant concepts where applicable.
If this is your first experience with Reactive frameworks or Akka, we recommend reviewing the What is Reactive? section. This section presents some background and ideas behind Reactive. You can read about those concepts when introduced in the tutorial, or read them first if you prefer a more theoretical overview before diving into the code. There you will learn, for example:
The challenges that Reactive Architecture can help you overcome
A summary of Reactive Principles
The benefits of using Akka
If you are looking for a deeper dive into the conceptual framework it is also advisable to review Designing Reactive Microsystems.
The Akka modules for Microservices section provides a conceptual overview for each of the Akka modules used with Microservices.
Each section of the tutorial provides for both running locally or deploying to the cloud. The cloud deployment steps use the Akka Cloud Platform. If you are working through the cloud deployment steps, we recommend reviewing the Akka Cloud Platform section of this guide and the details for Cloud deployment and your specific platform.
You can deploy your applications anywhere you choose, it can be on your own data centers, or in the cloud. However, the cloud deployment sections of the tutorial specifically describe how to run in Kubernetes.
The Implementing Microservices with Akka tutorial illustrates how to implement an Event Sourced CQRS application with Akka Persistence and Akka Projections.
The tutorial shows how to build and run each service step by step:
Some development tasks arise from requirements on existing projects. The How to … section contains guidance on introducing new features or architectural improvements to an existing codebase.
This documentation was last published: 2022-05-31