This is a fork of Akka 2.3 for Apache Flink. This was necessary for FLINK-2821.
The general problem is that we want to be able to bind to all inferfaces (e.g. 0.0.0.0) instead of having to bind to the same address as we expect messages to be tagged with. Akka 2.4.x supports this but requires Java 8 and Scala 2.11. Flink targets Java 7 and Scala 2.10/2.11 which makes it impossible to switch to 2.4.x for now.
Flakka addresses this shortcoming and ports back the relevant change for the bind address to the latest version of Akka 2.3. The pull request applied, apart from the rebranding is here: akka/akka#15610
Flakka can be build using the following command:
sbt clean compile -Dakka.scaladoc.diagrams=false
Tests then run fine with
sbt test
This is a summary of the minimal changes taken from project/scripts/release.
First check if signing works:
sbt publish-local-signed -Dakka.scaladoc.diagrams=false
Add credentials for Sonatype in ~/.sbt/global.sbt:
credentials += Credentials("Sonatype Nexus Repository Manager",
"oss.sonatype.org",
"<your username>",
"<your password>")
Then release:
sbt -Dakka.scaladoc.diagrams=false -Dakka.genjavadoc.enabled=true -Dpublish.maven.central=true +build-release
We believe that writing correct concurrent, fault-tolerant and scalable applications is too hard. Most of the time it’s because we are using the wrong tools and the wrong level of abstraction.
Akka is here to change that.
Using the Actor Model we raise the abstraction level and provide a better platform to build correct concurrent and scalable applications.
For fault-tolerance we adopt the “Let it crash” model which the telecom industry has used with great success to build applications that self-heal and systems that never stop.
Actors also provide the abstraction for transparent distribution and the basis for truly scalable and fault-tolerant applications.
Akka is Open Source and available under the Apache 2 License.
Learn more at http://akka.io.