一個電話,我有以下代碼:並行化在Java
List<ObjectA> allObjects = (List<ObjectA>) objArepository.findAll();
for (ObjectA objA : allObjects) {
String location = objA.getUrl();
Client client = utils.createClient();
WebTarget webTarget = client.target(location).path("/testUrl/" + someString);
Invocation.Builder requestBuilder = webTarget.request();
Response response;
try {
response = request.invoke();
}
}
,而不是用於環路串行發送這些電話,我想所有的平行發送這些呼叫,問題是,我沒」找到任何例子,我想念一個想法如何在java中做到這一點
只是一個建議 - Apache Spark是一款優秀的並行計算開源工具。這是值得你花時間來看看,但這取決於你。 – Peri461
多線程將是這裏的簡單答案。但是,這取決於請求的數量,如果沒有限制,您應該使用池線程來限制請求的數量,否則您會使接收請求的服務器超載。請注意,我寧願使用回調方法,而不使用多線程系統,但這需要更多工作 – AxelH