关于Tomcat 8的优化(Windows下)

Posted daidao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于Tomcat 8的优化(Windows下)相关的知识,希望对你有一定的参考价值。

1.指定使用JDK的路径和vm参数配置

  修改bin文件中的catalina.bat,大约95行setlocal之上加入如下内容:

  set JAVA_OPTS=-Xms256m -Xmx512m -XX:PermSize=256M -XX:MaxPermSize=512M//配置vm参数,根据系统实际情况配置
  set JAVA_HOME=...\jdk1.8.0_92//指定相应版本的jdk路径
  set JRE_HOME=...\jdk1.8.0_92\jre

2.修改链接参数

  修改conf路径下的server.xml,将

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

  修改为

<Executor 
    name="tomcatThreadPool" 
    namePrefix="catalina-exec-"
    maxThreads="500" //最大并发数,默认设置 200,一般建议在 500 ~ 800,根据硬件设施和业务来判断
    minSpareThreads="100" //Tomcat 初始化时创建的线程数,默认设置 25
    prestartminSpareThreads = "true"//在 Tomcat 初始化的时候就初始化 minSpareThreads 的参数值,如果不等于 true,minSpareThreads 的值就无效
    maxQueueSize = "100"//最大的等待队列数,超过则拒绝请求
/>

  修改默认的链接参数配置,将

  

<Connector 
    port="8080" 
    protocol="HTTP/1.1" 
    connectionTimeout="20000" 
    redirectPort="8443" 
/>

  修改为

  

<Connector 
   executor="tomcatThreadPool"
   port="8080" 
   protocol="org.apache.coyote.http11.Http11Nio2Protocol" //Tomcat 8 设置 nio2 更好,Tomcat 6、7设置nio更好:org.apache.coyote.http11.Http11NioProtocol
   connectionTimeout="20000" 
   maxConnections="10000" 
   redirectPort="8443" 
   enableLookups="false" //禁用DNS查询
   acceptCount="100" //指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数的请求将不予处理,默认设置 100
   maxPostSize="10485760" //以 FORM URL 参数方式的 POST 提交方式,限制提交最大的大小,默认是 2097152(2兆),它使用的单位是字节。10485760 为 10M。如果要禁用限制,则可以设置为 -1。
   compression="on" 
   disableUploadTimeout="true" 
   compressionMinSize="2048" 
   acceptorThreadCount="2" //用于接收连接的线程的数量,默认值是1。一般这个指需要改动的时候是因为该服务器是一个多核CPU,如果是多核 CPU 一般配置为 2.
   compressableMimeType="text/html,text/xml,text/plain,text/css,text/javascript,application/javascript" 
   URIEncoding="utf-8"
/>

 



以上是关于关于Tomcat 8的优化(Windows下)的主要内容,如果未能解决你的问题,请参考以下文章

windows下tomcat7+nginx1.8负载均衡

Windows环境中Tomcat优化

tomcat 8优化配置

阿里云centos6.8怎么优化tomcat内存

Tomcat 7.x/8.x 优化

windows下部署Tomcat8