「Akka 2.4」リリース、Javaの最低用件がJava 8以降に

 米TypesafeのAkkaチームは9月30日、並行処理アプリケーションをJava仮想マシン上に構築するためのツールキット「Akka 2.4.0」をリリースした。Javaの最低要件がJava 8以降に変更、Scalaも2.11からとなる。Akka 2.3系と後方のバイナリ互換がある。

 Akkaは並行処理、分散型、メッセージ主導のアプリケーションをJava仮想マシン上に構築するためのツールキットおよびランタイム。単一マシン上で毎秒5000万メッセージという高性能、柔軟なクラスタ管理、負荷分散、ルーティングなどの機能や特徴を備え、Akka Extensionsを利用して機能拡張も容易にできる。

 Akka 2.4は2012年に登場した2系の最新版となり、2014年3月に公開されたAkka 2.3に続くバージョンとなる。2014年末に発表していた最新のロードマップ通り、Java 6と7のサポートが廃止された。また、これに合わせてScalaは2.10のサポートがなくなり2.11以降となった。現在マイルストーン2の段階にある次期2.12もサポートする。

 2.3で実験的モジュールとして導入されたAkka Persistenceが正式モジュールに昇格した。JVMのクラッシュなどの際にactorが再スタートするといった場合にシステムを復旧できるよう内部状態を保存するモジュール。2.4ではモジュールそのものへの強化も加わっている。単一のActorSystemで複数のJounalを利用できるようになり、メッセージ処理のPersistent FSMを実験導入したほか、Query Side向けのストリームベースのAPIの実験的サポートも加わった。また、Akka Persistenceイベントマイグレーションのサポートも強化されている。

 Cluster Toolsモジュールでは、ClusterSingleton、ClusterClient、DistributedPubSub、ClusterShardingがフル対応となった。APIと設定も強化したという。このほか、ClusterSharding、ClusterClientなども強化された。

 Akka 2.4はプロジェクトのWebサイトより入手できる。開発チームによると、Akka 2.4系は2.3系とバイナリ互換があり、Akka 2.3上に構築したアプリケーションやライブラリはリコンパイルすることなく2.4系の上でも動くという。新しいJARはドロップインで古いJARと置き換えることができるとしている。バイナリ互換については例外もあるため、注意が必要だ。

Akka
http://akka.io/