我從幾個不同的API中獲取數據。他們是休息和肥皂web服務。我有一個ID,我逐一傳遞給每個API並獲取數據。但每個API都需要幾秒鐘才能返回結果,因此我創建的最終響應對象需要花費太多時間。在春季並行執行多個不同方法的調用
我的申請是Spring 4 Rest服務。並行調用所有這些API的最佳方式是什麼,以便儘可能減少響應時間。
謝謝。
我從幾個不同的API中獲取數據。他們是休息和肥皂web服務。我有一個ID,我逐一傳遞給每個API並獲取數據。但每個API都需要幾秒鐘才能返回結果,因此我創建的最終響應對象需要花費太多時間。在春季並行執行多個不同方法的調用
我的申請是Spring 4 Rest服務。並行調用所有這些API的最佳方式是什麼,以便儘可能減少響應時間。
謝謝。
您可以使用@Async註釋。你可以找到一個例子here
丹尼爾的答案是正確的,但我想補充更多的東西。如果你想用你的結果做一些事情,但不想用Future#阻止,那麼我建議你使用CompletableFuture類。
它會讓你添加將在其完成時觸發的各種動作。 關於如何在Spring的@async
註解中使用CompletableFuture,還有一篇非常不錯的文章。在這裏它的鏈接。 Completable futures with Spring async