tomcat 中的 ThreadPoolExecutorFactoryBean

ThreadPoolExecutorFactoryBean in tomcat

我正在尝试在 tomcat 中使用 ThreadPoolExecutorFactoryBean,这个 bean 会干扰 tomcat 线程吗?

<bean id="executorService" class="org.springframework.scheduling.concurrent.ThreadPoolExecutorFactoryBean">
    <property name="corePoolSize" value="40" />
    <property name="maxPoolSize" value="40" />
    <property name="allowCoreThreadTimeOut" value="true" />
    <property name="keepAliveSeconds" value="5" />
</bean>

ThreadPoolExecutorFactoryBean 的 javadoc 指出

JavaBean that allows for configuring a java.util.concurrent.ThreadPoolExecutor in bean style [...]

换句话说,一旦 Spring 处理了 bean 定义,它将使用您提供的属性创建一个 ThreadPoolExecutor。该对象将创建一个独立的线程池。这些线程与您的应用程序中的任何其他线程无关。

它们会干扰其他线程,因为线程调度程序将有更多线程与之共享时间片。而已。

We have started to see a weird issue in production where jdbc connection pool is running out of the connections after this change..i am not exactly sure if this is causing it though..want to be sure this is somehow not causing it...

除非您以某种方式共享这些线程与其他线程之间的连接,否则我无法想象线程池会导致您描述的行为。