每分钟限制休息模板拨打的电话

时间:2019-07-11 15:16:46

标签: java spring spring-mvc

enter code here我正在使用Rest Template成功调用API。但是,我发现API速率将我限制为每分钟仅8个调用,在8个调用之后返回429错误。有什么方法可以限制“休息模板”在一分钟内拨打的电话?

我尝试使用RateLimiter番石榴依赖项,但这没有帮助

我用来调用API的lambda函数的代码段

responseEntity = object.stream().map(dataFeedInformation -> {
  try {
    return restTemplate.exchange(dataFeedInformation.getDataElement().get(0).getDownloadURL(), HttpMethod.GET,
        dataFeedRestClient.getHttpEntity(), new ParameterizedTypeReference<AccountPlanItemDto>() {
        });
  } catch (Exception e) {
    e.printStackTrace();
  }
  return null;
}).collect(Collectors.toList());

1 个答案:

答案 0 :(得分:0)

这是我的解决方案:

while (responseEntityList.size() < listOfDownloadUrls.size()) {
      if (responseEntityList.size() > 0) {
        Thread.sleep(60000);
        numberOfIterations++;
      }
      for (int iterations = numberOfIterations * 20; iterations < (numberOfIterations * 20) + 20; iterations++) {

        if (responseEntityList.size() == listOfDownloadUrls.size()) {
          break;
        }