Akka 2.2: Von einem Experiment zum nächsten

Die Entwickler konnten die experimentelle Unterstützung von Clustern aus der Vorgängerversion ausbauen, sodass sie jetzt auch ein vollwertiges Feature ist. Darüber hinaus bringt "Coltrane" eine Vorschau auf Typed Channels.

In Pocket speichern vorlesen Druckansicht
Lesezeit: 2 Min.
Von
  • Julia Schmidt

Version 2.2 des Frameworks zum Entwickeln nebenläufiger, verteilter ereignisgetriebener Java- oder Scala-Anwendungen Akka steht bereit. Die in Akka 2.1 eingeführte Unterstützung für Cluster wurde in der Zwischenzeit ausgebaut und konnte vom experimentellen in den offiziellen Status übergehen.

Für die unter dem Namen "Coltrane" veröffentlichte Version arbeiteten die Entwickler unter anderem daran, dass die Remoting-Schicht nun zum einen durch Mehrfachübermittlung das zuverlässige Versenden von System-internen Nachrichten und zum anderen das Erkennen von Verbindungsfehlern unterstützt. Weiterhin soll das Framework nun über eine gut skalierbare, mit Aktoren arbeitende Netzwerk-I/O-Schicht mit SSL-Unterstützung und einer Protokoll-Pipeline-Infrastruktur verfügen.

Eine weitere Ergänzung bringt Akka 2.2 in Form der als experimentell gekennzeichneten typisierten Kanäle. Sie sollen eine Möglichkeit geben, Einschränkungen bezüglich der Typen von Nachrichten, die der commandProcessor bearbeiten kann, zu machen und so Fehler zu vermeiden. Beispiele und eine genauere Erklärung was die Umsetzung betrifft, finden sich in der Dokumentation.

Aufgrund einiger großer und kleiner Änderungen empfiehlt es sich, den Migration Guide zu lesen. Im Hintergrund bereiten die Entwickler außerdem vor, einige API-Methoden wie das Aufrufen von isTerminated für Aktoren abzuschaffen und durch Alternativen zu ersetzen, was unter anderem für stabileren Code sorgen soll.

Informationen zu verschiedenen Änderungen in Akka 2.2 lassen sich im Blog des Akka-Teams in mehreren Einträgen nachlesen. Das Framework steht unter der Apache-2-Lizenz. Möglichkeiten zum Download gibt es auf GitHub oder der Website des Projekts. (jul)