Akka 2.2 hardens clustering, previews channel typing
Version 2.2 of the Akka development framework for creating concurrent, distributed, and event-driven Java and Scala applications has been released under the code name "Coltrane". The experimental cluster support that was introduced in Akka 2.1 has been "improved, tested and hardened" and has now become an official feature.
For this version, released under the name "Coltrane", the developers tackled such tasks unifying the actor communications between local and remote deployment. This has, in part, involved extending the remoting layer to detect transmission failures and support reliable system message transmissions over multiple transports. The changes have also meant the deprecation of
isTerminated as a call, as it behaves differently in local and remote contexts; the Akka developers suggest that
ActorContext.watch be used instead.
The framework now also offers a highly scalable, actor-based network I/O layer with SSL support and a protocol pipeline infrastructure developed in conjunction with the spray.io team. Another addition in Akka 2.2 is the experimental support of Typed Channels. Typed Channels provide a facility for restricting the message types that can be processed by the commandProcessor to avoid errors. Examples and detailed implementation instructions can be found in the documentation.
The various major and minor changes make it advisable to read the migration guide. Information about some of the changes in Akka 2.2 can be found in various posts on the Akka team's blog. The framework is released under the Apache 2 licence and can be downloaded from GitHub, from the project's web site or through the Typesafe Activator.