gpt4 book ai didi

java - 一个 servlet 容器中的多个 Singleton(Tomcat)

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

我有自己的构建 Java Web 应用程序的框架,在该框架内,我创建了自己的单例线程池执行器服务。因此,每个使用我的框架的网络应用程序都会在启动时创建 1 个线程池执行器,供内部使用。

我的问题是:

  1. 假设我在同一个 Tomcat 中部署了 2 个网络应用程序,这 2 个线程池会相互干扰吗?
  2. 第一个网络应用程序的线程是否有可能访问第二个网络应用程序的线程池,反之亦然?
  3. 我是否需要为位于单个 servlet 容器中的所有网络应用程序创建一个线程池服务,而不是为每个网络应用程序创建一个?

谢谢。

最佳答案

  1. 没有。 Web 应用程序应该由 Tomcat 中的 ClassLoader 隔离,因此每个应用程序都应该有自己的单例实例。
  2. 只要 #1 的答案实际上是否定的,那么这个问题的答案也是否定的。
  3. 可能不会。

顺便说一句,我的理解是,作为一般规则,Java EE 网络应用程序不应启动新线程。

关于java - 一个 servlet 容器中的多个 Singleton(Tomcat),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18005924/

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