いくつかの異なるAPIからデータを取得しています。彼らは休息と石鹸ウェブサービスです。私は各APIに1つずつIDを渡し、そのデータを取得します。しかし、各APIは結果を返すのに数秒かかるので、作成する最終応答オブジェクトには時間がかかります。春にさまざまなメソッドを複数回呼び出す
私のアプリケーションはSpring 4 Rest Serviceです。応答時間ができるだけ短くなるように、これらのAPIをすべて並列に呼び出す最良の方法は何ですか?
ありがとうございました。
いくつかの異なるAPIからデータを取得しています。彼らは休息と石鹸ウェブサービスです。私は各APIに1つずつIDを渡し、そのデータを取得します。しかし、各APIは結果を返すのに数秒かかるので、作成する最終応答オブジェクトには時間がかかります。春にさまざまなメソッドを複数回呼び出す
私のアプリケーションはSpring 4 Rest Serviceです。応答時間ができるだけ短くなるように、これらのAPIをすべて並列に呼び出す最良の方法は何ですか?
ありがとうございました。
@Async注釈を使用できます。あなたは例を見つけることができますhere
ダニエルの答えは正しいですが、私はそれに何かを追加したいと思います。結果で何かをしたいが、Future#でブロックしたくない場合は、CompletableFutureクラスを使用することをお勧めします。
これは、完了時にトリガーされるさまざまなアクションを追加できるようにします。 Springの@async
アノテーションでCompletableFutureを使用する方法についての素晴らしい記事もあります。ここにリンクがあります。 Completable futures with Spring async