- 现象
用tail命令查看服务器tomcat的日志时发现报错:
INFO: Maximum number of threads (200) created for connector with address null and port 8080
- 说明及解决方案
说明
如报错所述,为最大线程数错误。
解决方案
使用线程池,用较少的线程处理较多的访问,可以提高tomcat处理请求的能力。
使用方式:
增加线程池
首先,打开/conf/server.xml,增加
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-" maxThreads="500" minSpareThreads="20" maxIdleTime="60000" />
最大线程500(一般服务器足矣),最小空闲线程数20,线程最大空闲时间60秒。
配置线程池
然后,修改<Connector ...>节点,增加executor属性,如:
<Connector executor="tomcatThreadPool" port="80" protocol="HTTP/1.1" connectionTimeout="60000" keepAliveTimeout="15000" maxKeepAliveRequests="1" redirectPort="443"
总结与回顾
提高阅读原文能力,在tomcat的server.xml中注释掉的内容中有关于这部分的说明,阅读要多注意,多存疑,才能有所发现。