Search code examples
concurrencyclojurejvmjvm-languagesakka

Akka as the concurrency model for Clojure


Looks there is a lot of cool things about Akka framework (I don't really understand the framework, hope to dig into it soon).
Is it encouraged to use Akka in Clojure? does it make sense to use Akka as the concurrency model in Clojure projects and drop the built in facilities?


Solution

  • Clojure has lots of built in support for dealing with concurrency. There's no need to bring an actor libarary into your project unless you actually need actors. Your question doesn't detail the architecture or design of your system, so I can't really speak to whether or not actors are necessary for your project, but I certainly wouldn't jump right into it. Take a look at Clojure's agents and other concurrency primitives first. They should suit your needs quite nicely.

    As far as Akka (or any actor library) as the concurrency model for Clojure, that is not the way the language was designed. You may choose to use an actor library for your application, but it is not the approach that the Clojure language has adopted.