Tomcat 8 在windows下的调优
2021-01-21 07:14
标签:toc ica 最大 false conf 内存分配 多核 无效 jvm 1.指定使用JDK的路径和vm参数配置 修改bin文件中的catalina.bat,大约95行setlocal之上加入如下内容: set JAVA_OPTS=-Xms1024m -Xmx1024m -XX:PermSize=256M -XX:MaxPermSize=512M//配置vm参数,根据系统实际情况配置
堆内存分配 -Xms JVM初始分配的内存由-Xms指定,默认是物理内存的1/64;JVM最大分配的内存由-Xmx指定,默认是物理内存的1/4。默认空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制;空余堆内存大于70%时,JVM会减少堆直到-Xms的最小限制。因此服务器一般设置-Xms、-Xmx相等避免在每次GC 后调整堆的大小。 2.修改server.xml 修改conf路径下的server.xml,将 修改为 name="tomcatThreadPool" namePrefix="catalina-exec-" maxThreads="500" //最大并发数,默认设置 200,一般建议在 500 ~ 800,根据硬件设施和业务来判断 minSpareThreads="100" //Tomcat 初始化时创建的线程数,默认设置 25 prestartminSpareThreads = "true"//在 Tomcat 初始化的时候就初始化 minSpareThreads 的参数值,如果不等于 true,minSpareThreads 的值就无效 maxQueueSize = "100"//最大的等待队列数,超过则拒绝请求 /> 3. 修改默认的链接参数配置 修改为 4. 关于Tomcat不定期close_wait过多的问题 服务器启动一段时间后出现如下问题: 解决:close_wait 是什么,这个状态与 time_wait 有一定的相似之处,都会持有这个连接一定的时间不放。我们知道,几乎所有的操作系统对单个进程的句柄数(连接数)都有限制,例如多数 linux 系统默认是 1024 个。因为那些处于 wait 的连接太多,导致可用连接应接不暇。禁用 wait ,让连接在返回后立马关闭,成为一个可用连接。 Tomcat 8 在windows下的调优 标签:toc ica 最大 false conf 内存分配 多核 无效 jvm 原文地址:https://www.cnblogs.com/zt2710/p/12112436.html
set JAVA_HOME=...\jdk1.8.0_92//指定相应版本的jdk路径
set JRE_HOME=...\jdk1.8.0_92\jre
持久态内存内存分配
JVM使用-XX:PermSize设置非堆内存初始值,默认是物理内存的1/64;由XX:MaxPermSize设置最大非堆内存的大小,默认是物理内存的1/4。将
port="8080"
protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
/>
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 为例: connectionTimeout="20000" maxThreads="1000" URIEncoding="UTF-8" keepAliveTimeout="0" />
注意 keepAliveTimeout="0" 即为关键所在
文章标题:Tomcat 8 在windows下的调优
文章链接:http://soscw.com/index.php/essay/44890.html