spring rest中的异步工作者

p1iqtdky  于 2021-07-23  发布在  Java
关注(0)|答案(0)|浏览(232)

我正在创建一个sprintrestapi来收集多个请求并调用另一个api。到目前为止我所做的是:

final String BASE_URL = "http://localhost:9001/";

@RequestMapping("/getCurrency")
public JSONObject GetCurrency(@RequestParam List<String> currencyCode) {
    RestTemplate restTemplate = new RestTemplate();
    URI targetUrl = UriComponentsBuilder.fromUriString(BASE_URL)
            .path("getCurrencyISO")
            .queryParam("q", String.join(",", currencyCode))
            .build()
            .encode()
            .toUri();
    return restTemplate.getForObject(targetUrl, JSONObject.class);
}

它工作得很好,它使用正确的参数调用核心api并返回它们。我正在努力改善核心api的网络流量。为此,我尝试将所有请求收集到我的api中,一旦我的队列达到10个请求,我将转到coreapi并获得结果,然后返回客户机。如果我不能在5秒钟内填满我的队列,我将直接转到核心api并返回客户机。
我需要为此创建一个异步worker,我相信它可以检查队列是否已满或是否已过5秒。我对春假的发展真的很陌生,有什么好的实践可以做到这一点呢?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题