业精于勤,荒于嬉
种一棵树最
|

超级鲨鱼辣椒

园龄:6年4个月粉丝:5关注:1

2021-09-16 15:35阅读: 33评论: 0推荐: 0

浅谈 Tomcat 调优

动静分离

程序中静态资源的访问无疑会消耗 Tomcat 的性能,一般采用 Nginx + Tomcat 实现动静分离。用 Nginx 作静态资源服务器。

配置 Tomcat 线程池

Tomcat 默认不使用线程池模式,可以通过配置线程池优化其性能。打开 server.xml 文件,配置如下:

< Connector executor="tomcatThreadPool"
port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
< Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
maxThreads="150" minSpareThreads="4"
maxIdleTime="60000"/>

Executor 配置参数说明如下:

  • name:线程池名称
  • namePrefix:线程池中每个线程名称的前缀
  • maxThreads:最大线程数。比如请求数超过 150 时,可以调大线程数,或者采用 Tomcat 集群
  • minSpareThreads:线程池中允许空闲的线程数
  • maxIdleTime:空闲线程存活时间

优化连接器 Connector

< Connector executor="tomcatThreadPool"
port="8080" protocol="HTTP/1.1"
enableLookups="false"
maxThreads="3000"
minSpareThreads="20"
acceptCount="1000"
URIEncoding="UTF-8"
connectionTimeout="20000"
redirectPort="8443" />

Connector 配置参数说明如下:

  • executor:指定配置的线程池
  • port:连接端口
  • protocol:协议类型
  • enableLookups:关闭 DNS 解析,减少性能损耗
  • maxThreads:最大连接线程数
  • minSpareThreads:最小允许空闲线程数
  • acceptCount:线程等待队列大小
  • connectTimeout:超时时间,单位毫秒
posted @   超级鲨鱼辣椒  阅读(33)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
展开