gpt4 book ai didi

java - spring boot 并行传出请求的最佳实践是什么?

转载 作者:搜寻专家 更新时间:2023-11-01 00:54:19 25 4
gpt4 key购买 nike

我正在构建一个 Java Spring Boot(微)服务,它基本上有一个 REST 端点来检索某些资源的数据。为此,对于每个传入请求,我需要从大约 3-5 个外部资源中检索信息(缓存和预检索数据不是一种选择,因为缓存在统计上无济于事,我不能存储数据以任何方式在我的服务器上)。

所以基本上每个传入请求我都需要生成 3-5 个外部服务调用,当然我希望并行/同时进行这些调用。这是一个非常轻量级的服务,因为它主要是在等待 I/O 响应。

这样做的最佳做法是什么?

如果我需要使用某种线程池,这意味着如果我需要支持 200 个并行请求,那么我需要 600-1000 个线程来处理传出请求,这将成为一个非常繁重的服务,主要是在等待我/欧。

(相比之下,对于 Node.js 这很容易,因为我只对每个使用一个 Promise.all(...),并且我获得了很好的并发性,但是我想了解如何同样可以使用 Java Sprint-Boot 实现)

最佳答案

您可以使用 Spring 5 中添加的新响应式功能。您可以在最新的 spring boot 版本中使用它。

例如看看这个 https://spring.io/guides/gs/reactive-rest-service/

关于java - spring boot 并行传出请求的最佳实践是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50479057/

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