【问题标题】:Tomcat thread pool? Commented out in tomcat.conf, should I use it?Tomcat线程池?在tomcat.conf中注释掉了,我应该使用它吗?
【发布时间】:2012-03-26 10:34:44
【问题描述】:

我真的不认为自己是 java 或 tomcat 专家。我有一个运行tomcat的vps。在tomcat.conf文件中有以下内容。

请注意,Excecutor 'tomcatThreadPool' 和相应的 Connector 引用 Executor 已被注释掉。

冒着听起来很愚蠢的风险...我要问这个问题...

注释掉ExecutorConnector 后,我的servlet 是如何运行的?换句话说,他们是否使用默认线程池?还是应该取消注释 ExecutorConnector 以提高 servlet 效率?

我想我对这方面的知识不是很了解......

<!--
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-" 
    maxThreads="150" minSpareThreads="4"/>
-->

<Connector port="8080" protocol="HTTP/1.1" 
           connectionTimeout="20000" 
           redirectPort="8443" />
<!-- A "Connector" using the shared thread pool-->
<!--
<Connector executor="tomcatThreadPool"
           port="8080" protocol="HTTP/1.1" 
           connectionTimeout="20000" 
           redirectPort="8443" />
-->

【问题讨论】:

标签: java tomcat servlets threadpool


【解决方案1】:

Tomcat documentation of Executor 说(重点是我的):

Executor 代表一个线程池,可以在它们之间共享 Tomcat 中的组件。历史上每个线程都有一个线程池 已创建连接器,但这允许您共享线程池,在 (主要)连接器以及其他组件 配置为支持执行器

因此,您无需取消注释任何内容即可让 Tomcat 高效工作,Executor 用于满足特殊需求,例如使用多个执行器或自己使用一些线程池。

顺便说一句,如果你用谷歌搜索“Tomcat Executor”,那么引用的 tomcat 页面就在第一个结果中。

【讨论】:

  • 感谢您为我解释事情,非常感谢。
  • 如果使用执行器线程池,您可以配置更多设置来微调池。
猜你喜欢
  • 1970-01-01
  • 2011-09-14
  • 1970-01-01
  • 2017-11-24
  • 1970-01-01
  • 2018-01-14
  • 2016-07-02
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多