tomcat调优

tomcat的调优主要就是针对server.xml的优化,从而提高的Tomcat的处理请求的能力。

默认配置下,Tomcat会为每个连接器创建一个绑定的线程池(最大线程数200),服务启动时,默认创建了5个空闲线程随时等待用户请求

<连接器端口= “8080”协议= “HTTP / 1.1”
connectionTimeout = “20000” 
minSpareThreads = “25” 
maxSpareThreads = “75”
enableLookups = “假” 
disableUploadTimeout = “真” 
useURIValidationHack = “假”
acceptCount = “300” 
maxThreads =“300” 
maxProcessors =“1000” 
minProcessors =“5”
redirectPort =“8443”/>


参数说明:

connnectionTimeout:网络连接超时,单位:毫秒,设置为0表示永不超时,这样设置有隐患的。通常可设置为30000毫秒,可根据检测实际情况,适当修改。

minSpareThreads:最小空闲线程数,Tomcat启动时的初始化的线程数,表示即使没有人使用也开这么多线程等待,默认值是10。

maxSpareThreads:最大备用线程数,一旦创建的线程超过这个值,Tomcat就会关闭不再需要的socket线程。

上边配置的参数,最大线程 500(一般服务器足以),要根据自己的实际情况合理设置,设置越大会耗费内存和 CPU,因为 CPU 疲于线程上下文切换,没有精力提供请求服务了,最小空闲线程数 20,线程最大空闲时间 60 秒,当然允许的最大线程连接数还受制于操作系统的内核参数设置,设置多大要根据自己的需求与环境。当然线程可以配置在“tomcatThreadPool”中,也可以直接配置在“Connector”中,但不可以重复配置。

enableLookups: 是否反查域名,以返回远程主机的主机名,取值为:true 或 false,如果设置为false,则直接返回IP地址,为了提高处理能力,应设置为 false。

disableUploadTimeout:上传时是否使用超时机制。

useURIValidationHack设成"false",可以减少它对一些url的不必要的检查从而减省开销。

acceptCount:指定当所有可以使用的处理请求的线程数都被使用时,可传入连接请求的最大队列长度,超过这个数的请求将不予处理,默认为100个。

maxThreads :Tomcat 使用线程来处理接收的每个请求,这个值表示 Tomcat 可创建的最大的线程数,默认值是 200

maxProcessors与minProcessors在Java中线程是程序运行时的路径,是在一个程序中与其它控制线程无关的,能够独立运行的代码段。它们共享相同的地址空间。多线程帮助程序员写出CPU最大利用率的高效程序,使空闲时间保持最低,从而接受更多的请求。通常的Windows是1000个左右,Linux的是2000个左右。



以上是一些常用的配置参数属性,当然还有好多其它的参数设置,还可以继续深入的优化,HTTP Connector 与 AJP Connector 的参数属性值,可以参考官方文档的详细说明:

https://tomcat.apache.org/tomcat-7.0-doc/config/http.html

https://tomcat.apache.org/tomcat-7.0-doc/config/ajp.html




  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值