SpringのControllerから先で非同期化するパターン
やりたいこと
- リクエストはHTTPで受け付けて、後ろ側の処理を並列実行
- 結果は全結果を待ち合わせてHTTPレスポンスを返す
- できれば、エラーが発生した場合は待ち合わせせずに早期にレスポンス返したい
Spring5 Recipesに記載されていたパターンは以下
java.util.Callableを使うパターン
SpringのDefferdResutを使うパターン
参考
java.util.CompletableFutureを使うパターン
参考
SpringのListenableFutureを使うパターン
参考
今後それぞれのメリットデメリットなどを整理していきたい
- 色々情報公開されていて、とても助かります。ありがとうございます。