gpt4 book ai didi

java - 等待服务返回的坏习惯?

转载 作者:行者123 更新时间:2023-11-28 22:43:25 25 4
gpt4 key购买 nike

我正在调用一个 Spring Web 服务,它需要大约 5 秒的时间来返回响应。在部署到 websphere 之前,webservice 调用发生在 Tomcat 容器内。另一位开发人员告诉我,对这个服务的调用应该在一个单独的 java 线程中处理,因为它的“让 JVM 停留在一行代码上太久的坏习惯”在这种情况下它停留在调用网络服务的代码。我不同意并认为如果 Web 服务需要 5 或 10 秒才能完成,那很好,将收到响应并且代码执行将继续正常进行。我说得对吗?

最佳答案

我想说两点:

  1. 如果后续计算依赖于该 Web 服务的结果,那么您就别无选择,生成新线程只会浪费资源;

  2. 如果此调用是完全独立的,则可能有充分的理由将其卸载到单独的线程。即使五秒本身并不多,这可能不是(现在或将来的代码库)系统无意义地等待独立任务完成的唯一时间点。让独立任务独立运行通常是一种好的做法。

但是,如果您的调用是在部署到 Tomcat 容器中的应用程序中发生的(您的问题中没有完全清楚这个细节),那么生成 Web 应用程序通常是一种不好的做法它自己的子线程。任务应提交给容器提供的执行程序服务(如果有的话)。

关于java - 等待服务返回的坏习惯?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18271655/

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