我有一個由許多servlet組成的SOA應用程序。當客戶端提交請求時,我的應用程序連接到4個外部應用程序,在它們之間交換數據並提供結果。確定SOA應用程序中的線程數(使用Servlet)
現在,由於這4個連接,請求的響應被大大延遲。因此,我們計劃將這4個調用分離爲多個線程,以便主線程可以快速回復「我們正在處理您的數據」。
問題是,我應該爲這些任務啓動多少個線程?我可以在4個不同的線程中完成單個線程中的所有任務。什麼是最佳解決方案?
另外,最影響CPU的是什麼?線程數量或特定線程執行持續時間的長度? 我的應用程序每秒收到5到7個請求。那麼,什麼會更好? 1個獨立(並且運行時間更長)的線程或者每個請求4個獨立(但運行時間更短)的線程?
在此先感謝。