One of the best features of Akka is Akka Cluster. Akka cluster allows for building distributed applications, where one application or service spans multiple nodes. From its initial release in 2013, Akka Cluster needed a node management system to manage the Akka nodes and to provide a resilient and elastic platform. With Kubernetes Akka finally has the node management system that is has been waiting for. Akka Cluster has been designed to gracefully handle nodes leaving and joining a running cluster while continuing to run. Kubernetes adds and removes nodes as needed to increase capacity or to recover from failures. In effect, there is a perfect symbiosis between Akka Cluster and Kubernetes. In this talk, we will look at and demonstrate how Akka Java Cluster and Kubernetes work together and how together they form a beautiful relationship.
5. The actor model in computer science is a mathematical model of
concurrent computation that treats "actors" as the universal primitives
of concurrent computation. In response to a message that it receives,
an actor can: make local decisions, create more actors, send more
messages, and determine how to respond to the next message
received. Actors may modify their own private state, but can only affect
each other through messages (avoiding the need for any locks).
Wikipedia
6. The actor model in computer science is a mathematical model of
concurrent computation that treats "actors" as the universal primitives
of concurrent computation. In response to a message that it receives,
an actor can: make local decisions, create more actors, send more
messages, and determine how to respond to the next message
received. Actors may modify their own private state, but can only affect
each other through messages (avoiding the need for any locks).
Wikipedia
7. The actor model in computer science is a mathematical model of
concurrent computation that treats "actors" as the universal primitives
of concurrent computation. In response to a message that it receives,
an actor can: make local decisions, create more actors, send more
messages, and determine how to respond to the next message
received. Actors may modify their own private state, but can only affect
each other through messages (avoiding the need for any locks).
Wikipedia
8. The actor model in computer science is a mathematical model of
concurrent computation that treats "actors" as the universal primitives
of concurrent computation. In response to a message that it receives,
an actor can: make local decisions, create more actors, send more
messages, and determine how to respond to the next message
received. Actors may modify their own private state, but can only affect
each other through messages (avoiding the need for any locks).
Wikipedia
9. The actor model in computer science is a mathematical model of
concurrent computation that treats "actors" as the universal primitives
of concurrent computation. In response to a message that it receives,
an actor can: make local decisions, create more actors, send more
messages, and determine how to respond to the next message
received. Actors may modify their own private state, but can only affect
each other through messages (avoiding the need for any locks).
Wikipedia
10. The actor model in computer science is a mathematical model of
concurrent computation that treats "actors" as the universal primitives
of concurrent computation. In response to a message that it receives,
an actor can: make local decisions, create more actors, send more
messages, and determine how to respond to the next message
received. Actors may modify their own private state, but can only affect
each other through messages (avoiding the need for any locks).
Wikipedia
11. The actor model in computer science is a mathematical model of
concurrent computation that treats "actors" as the universal primitives
of concurrent computation. In response to a message that it receives,
an actor can: make local decisions, create more actors, send more
messages, and determine how to respond to the next message
received. Actors may modify their own private state, but can only affect
each other through messages (avoiding the need for any locks).
Wikipedia
12. The actor model in computer science is a mathematical model of
concurrent computation that treats "actors" as the universal primitives
of concurrent computation. In response to a message that it receives,
an actor can: make local decisions, create more actors, send more
messages, and determine how to respond to the next message
received. Actors may modify their own private state, but can only affect
each other through messages (avoiding the need for any locks).
Wikipedia
13. The actor model in computer science is a mathematical model of
concurrent computation that treats "actors" as the universal primitives
of concurrent computation. In response to a message that it receives,
an actor can: make local decisions, create more actors, send more
messages, and determine how to respond to the next message
received. Actors may modify their own private state, but can only affect
each other through messages (avoiding the need for any locks).
Wikipedia
14. The actor model in computer science is a mathematical model of
concurrent computation that treats "actors" as the universal primitives
of concurrent computation. In response to a message that it receives,
an actor can: make local decisions, create more actors, send more
messages, and determine how to respond to the next message
received. Actors may modify their own private state, but can only affect
each other through messages (avoiding the need for any locks).
Wikipedia
15. The actor model in computer science is a mathematical model of
concurrent computation that treats "actors" as the universal primitives
of concurrent computation. In response to a message that it receives,
an actor can: make local decisions, create more actors, send more
messages, and determine how to respond to the next message
received. Actors may modify their own private state, but can only affect
each other through messages (avoiding the need for any locks).
Wikipedia
16. The actor model in computer science is a mathematical model of
concurrent computation that treats "actors" as the universal primitives
of concurrent computation. In response to a message that it receives,
an actor can: make local decisions, create more actors, send more
messages, and determine how to respond to the next message
received. Actors may modify their own private state, but can only affect
each other through messages (avoiding the need for any locks).
Wikipedia
24. The enabler of these characteristics is a Cloud-Ready Message Driven Model.
Lightbend codified these principles into the Reactive Manifesto in 2013; 24,000+ signatories around the world so far.
Responsive Resilient Elastic
React to
Users
React to
Failures
React to
Load Variance
Low latency / High
performance
Real-time / NRT
Graceful, Non-catastrophic
Recovery
Self-Healing
Responsive in the face of
changing loads
Reactive Systems
50. Akka Reactive Systems and Kubernetes
Responsive Resilient Elastic
React to
Users
React to
Failures
React to
Load Variance
Low latency / High
performance
Real-time / NRT
Graceful, Non-catastrophic
Recovery
Self-Healing
Responsive in the face of
changing loads
a beautiful relationship