2017-01-12 4 views
0

私はPlayフレームワークとAkka Toolkitの両方に新しいです。Play Async Vs Akka俳優

Playを使用してWebクライアントとマイクロサービスの間にオーケストレーションレイヤを構築しようとしています。
基本的に、クライアントからのリクエストごとに、PlayはWSコールを行い、JSONを返すだけでなくキャッシュしなければなりません。

WSコールを実行するときに、Play Async APIを使用するか、Akkaアクターを使用できます。 これらのオプションのいずれかが他のものより重要ですか?

Play Async APIを直接使用するのと比較して、Playと一緒にAkkaのアクターを使用することを推奨する必要がありますか?

+0

Play Async APIとは何ですか? Web参照を提供してください。 Playにはさまざまな非同期ソリューションが使用されています。 –

+0

https://www.playframework.com/documentation/2.5.x/JavaAsync "Java 8は、CompletionStageと呼ばれる一般的な約束APIを提供します。CompletionStage は、結局Result型の値で償還されます。CompletionStage の代わりに レスポンスを待つ間にWebクライアントがブロックされますが、何もブロックされませんサーバーリソースを使用して他のクライアントにサービスを提供することができます。 –

答えて

0

アクカでは、アクタとしての主な概念であり、状態を保持するメモリを持つオブジェクトです。その状態への順次操作は、システムによって直列化され、干渉することはありません。 Java8の約束/先物では、主な概念は非同期メソッド呼び出しであり、異なるメソッドが同じオブジェクトに属している場合、シリアルアクセスを提供することはユーザーの責任であり、容易ではなく、エラーが発生する可能性があります。 次に、先物を使用することは、それぞれの別々の操作のためのFutureオブジェクトの作成を意味し、操作がきめ細かな場合にオーバーヘッドと見なすことができます。 一方、CompletableFutureには、いくつかのイベントをallOf()のようなものに組み合わせる手段がありますが、これはAkkaには直接的な類似点がありません。