【问题标题】:Using ExecutorService / Futures within Tomcat?在 Tomcat 中使用 ExecutorService / Futures?
【发布时间】:2013-07-13 05:26:46
【问题描述】:

我有一个可能持续长达 100 毫秒的任务,我想在开始处理请求时启动它,并在以后需要时获取结果。我不想阻止和扩展这个数量的每个请求。

在一个普通的 Java 应用程序中,我将创建一个 ExecutorService 并使用 Future<T> 将其作为 Callable<T> 运行,以便稍后获得结果。

由于 Tomcat 维护自己的线程池,我是否应该尝试与之协调?换句话说,我的 ExecutorService 池是否与 Tomcat 的线程竞争?这是一个问题吗?以某种方式搭载到 Tomcat 的池中是否有优势?

非常感谢有类似经验的人的任何建议。此外,我现在对添加额外的依赖项(如 Spring 等)不感兴趣。

【问题讨论】:

    标签: java tomcat executorservice future


    【解决方案1】:

    我应该尝试与之协调吗?

    不,Tomcat 池专用于 Tomcat

    换句话说,我的 ExecutorService 池是否与 Tomcat 的线程竞争?

    一点也不。这是你的游泳池。

    这是一个问题吗?以某种方式搭载到 Tomcat 的池中是否有优势?

    只要不产生数百万个线程,维护自定义应用程序池就没有问题。只需确保为线程提供 daemon 状态,这样 Tomcat 关闭脚本就不会抱怨“无法停止 Tomcat”

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-08-31
      • 2020-10-13
      • 1970-01-01
      • 2019-11-18
      • 2012-12-25
      • 2020-05-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多