Introducing Akka Cloud to Edge Continuum. Build once for the Cloud. Seamlessly deploy to the Edge. Learn More
 

News & Articles

Full archive

September 30

2016

Akka 2.4.11 Released!

Dear hakkers,

We are proud to announce the release of Akka 2.4.11, which includes the new experimental Akka Remoting, codenamed Artery.

Some noteworthy changes in the 2.4.11 release are:

  • New remoting, see below
  • Progress of Akka Typed, see below
  • Fixed an issue where in some cases cancel or failure events was dropped in Streams leading to potential deadlock #21446

New Remoting

Artery is a reimplementation of the old remoting module aimed at improving performance and stability. It is mostly source compatible with the old implementation and it is a drop-in replacement in many cases. Main features of Artery compared to the previous implementation:

  • Based on Aeron (UDP) instead of TCP
  • Focused on high-throughput, low-latency communication, mostly allocation-free operation
  • Isolation of internal control messages from user messages improving stability and reducing false failure detection in case of heavy traffic by using a dedicated subchannel.
  • Support for a separate subchannel for large messages to avoid interference with smaller messages
  • Compression of actor paths on the wire to reduce overhead for smaller messages
  • Support for faster serialization/deserialization using ByteBuffers directly
  • Built-in Flight-Recorder to help debugging implementation issues without polluting users logs with implementation specific events
  • Providing protocol stability across major Akka versions to support rolling updates of large-scale systems

The new remoting is enabled with configuration:

akka.remote.artery {
  enabled = on
  # The hostname or ip clients should connect to.
  canonical.hostname = localhost
  # use 0 if you want a random available port
  canonical.port = 25520
}

The protocol part of the actor system address is now simply akka, so you need to change previous akka.tcp to akka in for example configuration of cluster seed-nodes.

Please read the documentation for Scala or Java for more details.

The full list of changes since the last milestone is available under the 2.4.11-ARTERY milestone on github for your reference.

Akka Typed

This release brings some significant changes to the Akka Typed module:

All these changes are contributed by Actyx, the company Roland Kuhn co-founded recently. Actyx is interested in pushing Akka Typed forward as an open-source base technology for the implementation of cloud services for the manufacturing industry.

Credits

A total 46 issues were closed since 2.4.10 (New remoting not counted).

The complete list of closed issues can be found on the 2.4.11 and 2.4.11-ARTERY milestones on github.

For this release we had the help of 19 committers – thank you!

A special thanks to Łukasz Dubiel who contributed to Artery and Roland Kuhn who contributed to Akka Typed.

Credits:
commits added removed
  142   22445    6850 Patrik Nordwall
   23    2573    1111 Johan Andrén
   20   11067     807 Endre Sándor Varga
   11    4978    1651 Konrad Malawski
    6     828     202 Johan Andrén
    5    6740      90 Johannes Rudolph
    4    1441     361 Martynas Mickevičius
    3    1139       4 Richard Imaoka
    3    5090    1174 Roland Kuhn
    2     341     276 Łukasz Dubiel
    2      96      15 gosubpl
    1      12       4 drewhk
    1      37      13 monkey-mas
    1      22      22 Michał Płachta
    1      10       7 Richard S. Imaoka
    1      12       4 Jeroen Gordijn
    1       1       1 KAWACHI Takashi
    1       9       1 Matthias Lüneberg
    1     151       8 Nafer Sanabria
    1      28       5 Ortigali

Happy hakking!

– The Akka Team