如何使用 AsyncRestTemplate 同时进行多个调用?
2022-09-02 09:52:45
我不明白如何有效地用于进行外部服务调用。对于下面的代码:AsyncRestTemplate
class Foo {
public void doStuff() {
Future<ResponseEntity<String>> future1 = asyncRestTemplate.getForEntity(
url1, String.class);
String response1 = future1.get();
Future<ResponseEntity<String>> future2 = asyncRestTemplate.getForEntity(
url2, String.class);
String response2 = future2.get();
Future<ResponseEntity<String>> future3 = asyncRestTemplate.getForEntity(
url3, String.class);
String response3 = future3.get();
}
}
理想情况下,我希望同时执行所有3个调用,并在全部完成后处理结果。但是,每个外部服务调用在被调用之前不会提取,但会被阻止。那么,这难道不会违背目的吗?我不妨使用.get()
get()
AsyncRestTemplate
RestTemplate
所以我不明白如何让他们同时执行?