(MongoDBに対して)多数のデータベースクエリを実行しているWebサービスがあり、それらのデータベースクエリによって返されたレコードに対して処理のしかたがほとんどありません。各Web要求は、約15〜45回のこれらの要求を実行する必要があり、各問合せ+処理に約20msかかるため、許容できないページ応答時間が発生します。キャッシュミス率が高く、データをできるだけ新鮮にする必要があるため、キャッシュは機能しません。Scala/JavaのWebリクエスト内の並列化/スレッド?
Scala + Akkaとアクターを使ってクエリを実行して処理するクラスを並列化する予定でしたが、サーブレットコンテナ内にスレッドを作成することはお勧めできません。 ScalaでのWebリクエスト内でのスレッド/並列化の推奨方法は何ですか?
複数のスレッドを持つことができない場合は、どのように並列化しているのかわからないため、私はあなたの質問に答えません。私が言うことは、Akka Actorsを使うことはおそらく素晴らしい考えではないということです。 Akka Futuresはここに行く道だ。 –
@Derek私はScala + AkkaのWebリクエストの中で自分のコードにActorsを使用することはできますか?私は、複数のスレッドを持ち、クエリを実行するクラスをラップし、アクタで処理したいと考えています。私は先物を考えているだけでなく、私が俳優を使うことができるかどうかを知りたがっています。 –
私は、ビジネスロジックとWebコンテナの間にActorシムを配置する、AkkaのHTTPアドオンであるMistを使用して、信頼性の高いスケーラブルなアプリケーションを作成しました。だから私はそれに何か問題があるのか分からない。 –