BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース マイクロサービスフレームワークのLagom 1.5がAkka Managementを導入、KubernetesとOpenShiftをサポート

マイクロサービスフレームワークのLagom 1.5がAkka Managementを導入、KubernetesとOpenShiftをサポート

原文(投稿日:2019/05/11)へのリンク

マイクロサービスフレームワークLagomの最新バージョンには、Akka Management、Akka対応アプリケーションを操作するツールセット、KubernetesまたはOpenShiftへのデプロイサポートが付属する。先日リリースされたバージョン1.5は、Play 2.7.0Alpakka Kafka 1.0Akka 2.5.22をベースに、CouchbaseとAkka gRPCによるgRPCサポートが加えられている。

新しいAkka Managementツールを使用すれば、専用のHTTPエンドポイント経由で、Akka Actor Systemの状態をリモート検査することが可能になる。Lagomはデフォルトで、ヘルスチェック用に、エンドポイントにいくつかのルートを追加する。

新たなツーリングによって、シードノード(seed node)の静的リストの使用に代えて、環境内の既存のノードを検出するAkka Cluster Bootstrapを導入することも可能になった。Akkaチームでは、よりシンプルで堅牢であるという理由から、新たなCluster Bootstrapへの移行を推奨している。

新バージョンでは、フリクションの増大とデプロイの柔軟性の低下を理由として、Lightbend Orchestrationのサポートが削除された。デプロイメントの自動処理は将来的になくなる予定であるため、手動で行うことが推奨されている。OpenShiftまたはKubernetes環境をターゲットにしたデプロイメントのために、チームは、Lightbendアプリケーションをデプロイする方法についてのガイドを用意した。

より多くの選択肢を開発者に提供するため、既存のHTTP/JSONベースのトランスポートに加えて、クロスサービスgRPC通信のインキュベーション(テスト未完了のため、機能が制限されている可能性がある)のサポートが導入される。gRPCではHTTP/2が必須だが、これはすでにLagomによってサポートされている。

もうひとつのインキュベーション機能はCouchbaseのサポートだ。これはAkka Persistence Couchbaseモジュールを通して、永続エンティティ(DDD用語ではAggregateルート)と読み込み側プロセッサ(読み込みモデルを担当)のための、新たな選択肢となる。Lagomではすでに、Cassandra、PostgreSQL、MySQL、Oracle、H2をサポートしている。

その他の改良点としては、

  • 開発モードとテストの両方で、フレームワークが提供する自己署名証明書により、TLSの基本部分をサポート
  • ルータの追加により、サービスが公開する経路の拡張が可能
  • Java 11の初期サポート

Lagom 1.4から1.5に移行するためのガイドが提供されている。それ以前のバージョンから移行する場合は、1.5に移行する前に、まず最新バージョンである1.4にアップグレードすることが推奨されている。

アップデート版である1.5.1もリリースされた。Akkaのサービスディスカバリに基づく、新たなサービスロケータの実装が追加されている。1.5で削除されたLightbend Orchestrationのロケータに代わるものだ。

Lagomは、AkkaとPlayをベースとする、JavaおよびScala用のオープンソースのマイクロサービスフレームワークで、特にCQRSとEvent Sourcingを基本概念としたリアクティブアプリケーション向けに設計されている。

Lagomの最初のリリース時に行った、Akkaを開発したLightomnd CTOのJonasBonér氏とのインタビューの中で、氏は、公開されているマイクロサービスフレームワークのほとんどは、個々のマイクロサービスを簡単に構築することに主眼を置いている、と主張した — これは簡単だ。Lagomはそれを、マイクロサービスのシステム、大規模システムに拡張している — 分散システムの複雑性に直面するため、これは難しい部分なのだ。

この記事に星をつける

おすすめ度
スタイル

BT