Akkaフレームワークの最適な使用例は何ですか?[closed] 質問する

Akkaフレームワークの最適な使用例は何ですか?[closed] 質問する

私はたくさんの絶賛の声を聞きましたアッカフレームワーク(Java/Scala サービス プラットフォーム)を使用していますが、今のところ、それが適している実際の使用例はあまり見ていません。そのため、開発者がそれをうまく使用している事例についてお聞きしたいです。

唯一の制限は、チャット サーバーを作成するケースを含めないことです。(なぜでしょうか? これは、多くの類似したものの例として使い古されているからです)

ベストアンサー1

これまで 2 つの実際のプロジェクトでこれを使用しましたが、非常にうまくいきました。どちらもほぼリアルタイムの交通情報分野 (高速道路上の車の交通など) で、複数のノードに分散され、複数の関係者間のメッセージを統合し、信頼性の高いバックエンド システムです。クライアントの詳細についてはまだお伝えできませんが、承認が得られれば、参考資料として追加できるかもしれません。

Akka は、バージョン 0.7 から始めたにもかかわらず、これらのプロジェクトで本当に成功しました。(ちなみに、私たちは scala を使用しています)

大きな利点の 1 つは、ほとんど定型的な処理を必要とせずにアクターとメッセージからシステムを簡単に構成できることです。手動でスレッドを作成する際の複雑さがなく、非常にスケーラブルで、オブジェクト間での非同期メッセージの受け渡しをほぼ無料で実現できます。

これは、あらゆる種類の非同期メッセージ処理をモデル化するのに最適です。私は、他のスタイルよりも、あらゆるタイプの (Web) サービス システムをこのスタイルで記述することを好みます (JAX-WS を使用して非同期 Web サービス (サーバー側) を記述しようとしたことがありますか? それは、非常に多くの配管作業です)。したがって、すべてが暗黙的に同期メソッドを使用して呼び出され、その 1 つのコンポーネントが何かをロックしているために、コンポーネントの 1 つでハングアップしたくないシステムであれば、どのようなシステムでもかまいません。これは非常に安定しており、障害に対する let-it-crash + supervisor ソリューションは実際にうまく機能します。すべてはプログラムで簡単にセットアップでき、単体テストも難しくありません。

さらに、優れたアドオン モジュールもあります。Camel モジュールは Akka にうまくプラグインされ、構成可能なエンドポイントを持つ非同期サービスを簡単に開発できるようになります。

私はこのフレームワークに非常に満足しており、これは私たちが構築するコネクテッド システムのデファクト スタンダードになりつつあります。

おすすめ記事