tomcat8.5优化配置

 

参考文章: https://www.cnblogs.com/steven-snow/p/9262025.html

1、Tomcat内存使用调整

windows系统在bin/catalina.bat文件中加入下面参数,对JVM进行优化  linux系统在catalina.sh文件下修改

在echo Using CATALINA_BASE:   "%CATALINA_BASE%"的上面一行加下面代码:

set JAVA_OPTS=
-server 
-Xms4096M 
-Xmx4096M   #-Xms与-Xmx设成一样的值,避免JVM因为频繁的GC导致性能大起大落
-Xss512k 
-XX:+AggressiveOpts 
-XX:+UseBiasedLocking  
-XX:+DisableExplicitGC 
-XX:MaxTenuringThreshold=15 
-XX:+UseConcMarkSweepGC 
-XX:+UseParNewGC  
-XX:+CMSParallelRemarkEnabled 
-XX:+UseCMSCompactAtFullCollection 
-XX:LargePageSizeInBytes=128m  
-XX:+UseFastAccessorMethods 
-XX:+UseCMSInitiatingOccupancyOnly 
-Djava.awt.headless=true
echo Using JAVA_OPTS:    %JAVA_OPTS%

参数含义解释:

-Xmx:java heap最大值,使用的最大内存

上面两个值是分配JVM的最小和最大内存,取决于硬件物理内存的大小,建议均设为物理内存的一半。

-XX:MaxNewSize:

-Xss 15120 这使得JBoss每增加一个线程(thread)就会立即消耗15M内存,而最佳值应该是128K,默认值好像是512k.

+XX:AggressiveHeap 会使得 Xms没有意义。这个参数让jvm忽略Xmx参数,疯狂地吃完一个G物理内存,再吃尽一个G的swap。

-Xss:每个线程的Stack大小

-verbose:gc 现实垃圾收集信息

-Xloggc:gc.log 指定垃圾收集日志文件

-Xmn:young generation的heap大小,一般设置为Xmx的3、4分之一

-XX:+UseParNewGC :缩短minor收集的时间

-XX:+UseConcMarkSweepGC :缩短major收集的时间

2、Tomcat连接参数的优化,主要是针对吞吐量做优化:

<Connector 
  port="9095" 
  protocol
="HTTP/1.1"   connectionTimeout="20000"   redirectPort="8443"   maxHttpHeaderSize="8192"   maxThreads="1000"   minSpareThreads="100"   maxSpareThreads="1000"   minProcessors="100"   maxProcessors="1000"   enableLookups="false"   compression="on"   compressionMinSize="2048"   noCompressionUserAgents="gozilla, traviata"   compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"   URIEncoding="utf-8"   acceptCount="1000"   disableUploadTimeout="true"/>

参数含义:

maxThreads 客户请求最大线程数

minSpareThreads Tomcat初始化时创建的 socket 线程数

maxSpareThreads Tomcat连接器的最大空闲 socket 线程数

enableLookups 若设为true, 则支持域名解析,可把 ip 地址解析为主机名

redirectPort 在需要基于安全通道的场合,把客户请求转发到基于SSL 的 redirectPort 端口

acceptAccount 监听端口队列最大数,满了之后客户请求会被拒绝(不能小于maxSpareThreads )

connectionTimeout 连接超时

minProcessors 服务器创建时的最小处理线程数

maxProcessors 服务器同时最大处理线程数

URIEncoding URL统一编码

compression 打开压缩功能 

compressionMinSize 启用压缩的输出内容大小,这里面默认为2KB 

compressableMimeType 压缩类型 

connectionTimeout 定义建立客户连接超时的时间. 如果为 -1, 表示不限制建立客户连接的时间

基本按字面意思理解,还是很见名知意的。

3、windows下Tomcat配置查看

 tomcat的bin目录下点击tomcat8w.exe

提示服务为安装,先安装服务

 再次点击启动:

调整需要的jvm内存,初始化128, 最大4096,依需要而定。

posted @ 2019-08-07 22:57  jixhua  阅读(909)  评论(0编辑  收藏  举报