是否可以将Spring Batch用于处理completeablefutures?

时间:2019-06-05 23:33:36

标签: java spring multithreading spring-batch

我有30多个阅读器,它们可能每5分钟读取500个唯一标签。我想使用这些唯一的标签,并用信息检查我的数据库。现在,我一次只能读5-10个读者。是否可以使用Spring Batch创建用于检查数据库的批处理?我正在使用resttemplate交换方法来访问我的API。因此,我想使用交换方法将标签列表发送到我的API。我该怎么做呢?我无法发送和接受列表。

我尝试使用我的API发送和接受列表,但找不到解决方法。现在,我只是一个接一个地检查API .....

  for (Maybevehicle veh : list) { //Iterate vehicle list
        CompletableFuture<Void> requestCompletableFuture = 
  CompletableFuture
                .supplyAsync(
                        () -> appRestTemplate.exchange(url + 
   veh.getB().getRfidtag(), HttpMethod.GET, requestEntity, 
   Bmwvehiclemain.class),
                        vehicleRequestExecutor
                )
                .thenApply((responseEntity) -> {
                    responses.add(responseEntity.getBody());
                    return responseEntity;
                })
                .thenAccept((responseEntity) -> {
                    //doSomeFinalStuffWithResponse(responseEntity);
                })
  .exceptionally(ex -> {
                   return null;
                });
        completableFutures.add(requestCompletableFuture);
        }
    }

我添加的代码只是用于处理可完成的未来的代码。工作正常。我只是担心打API太多次了。预先感谢!

0 个答案:

没有答案