Distributed actor-based dev with Akka
Akka is a concurrent, distributed, and fault-tolerant framework and runtime environment developed by Lightbend (formerly Typesafe). It supports the actor model initially developed in Erlang. So, Akka is greatly inspired by Erlang's actor.
The following image shows collaborating tasks by sending messages among actors. Actors send messages via mail boxes. Receiving actors check their mail boxes and process them. Actors can organize hierarchies. Parent actors can request their subtasks to child actors:
Akka itself is developed in Scala but it supports Java. We will use Okku, a Clojure wrapper for Akka.
Getting ready
The okku
is a small wrapper for Akka. We need to add the okku
to your project.clj
file to run samples (or any other dependency management you are using):
:dependencies [[org.clojure/clojure "1.8.0"] [org.clojure.gaverhae/okku "0.1.5"]
How to do it...
Let's learn how to use Akka via okku
!
Your first okku
Let's declare okku.core
and some akka...