gpt4 book ai didi

java - spring-boot 多线程聚合,反之亦然

转载 作者:太空宇宙 更新时间:2023-11-04 11:50:38 24 4
gpt4 key购买 nike

我们正在构建 spring-boot 应用程序。目前,Rest Controller 正在按顺序调用多个 Web 服务。现在我们需要并行执行这些调用并根据以下条件返回响应

  1. 聚合 - 等待所有并行 Web 服务调用完成,然后聚合响应并返回相同的响应。

  2. 无聚合 - 以首先完成的 Web 服务调用返回响应,并放弃/取消/中断正在进行的调用的其余部分。

我做了一些研究,发现了 ExecutorService,但不确定这是否适合这两种类型的场景,因为我对 Spring-Boot 非常陌生。

如果有办法达到同样的目的,请告诉我。

最佳答案

在我看来,ExecutorService 是一个好主意,您应该向 ExecutoService 提交一个 Callable ,以便获得一个 Future

要处理情况 # 1 ,您应该对 isDone() 进行逻辑与返回值方法调用所有 Futures 并处理情况#2,您应该执行逻辑 OR 之类的操作。

这里是引用资料 - Callable & Future

我并不是专门针对 Spring Boot 提出建议,而是来自 Core Java 背景。这将帮助您入门,然后您可以改进方法并切换 API。

希望对你有帮助!!

关于java - spring-boot 多线程聚合,反之亦然,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41871921/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com