性能测试_tomcat调优

tomcat调优,

https://www.cnblogs.com/zhuawang/p/5213192.html

 

:Tomcat内存优化,启动时告诉JVM我要一块大内存(调优内存是最直接的方式)

在文档/bin/catalina.sh的前面,增加如下配置: 

JAVA_OPTS="-Xms2048m –Xmx2048m -Xss512K -XX:PermSize=256m -XX:MaxPermSize=512m"

 


JAVA_OPTS='-Xms【初始化内存大小】 -Xmx【能够使用的最大内存】' 

-Xms<size> JVM初始化堆的大小

-Xmx<size> JVM堆的最大值 实际参数大小根据服务器配置或者项目具体设置.

Java程序中,每个线程都有自己的Stack Space。这个Stack Space不是来自Heap的分配。

所以Stack Space的大小不会受到-Xmx和-Xms的影响,这2个JVM参数仅仅是影响Heap的大小。

 

类似还有一段这样的配置

JAVA_OPTS="-Xmn768m -Xms2048m -Xmx4096m -Xss512k -XX:PermSize=256m -XX:MaxPermSize=512m -Djava.awt.headless=true"
GC_PLS="-XX:ParallelGCThreads=16 -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+UseCMSCompactAtFullCollection -XX:CMSFullGCsBeforeCompaction=5 -XX:CMSInitiatingOccupancyFraction=70"

 

:Tomcat 线程优化 在server.xml中

<Connector port="37073" protocol="HTTP/1.1"

    connectionTimeout="20000"

    redirectPort="8443" maxHttpHeaderSize="8192" useBodyEncodingForURI="true"

    minProcessors="100" maxProcessors="5000"

   maxThreads="5000" minSpareThreads="1000" maxSpareThreads="4000"

   enableLookups="false" acceptCount="3500"

   compression="on" compressionMinSize="2048"

   compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain,application/json"

   disableUploadTimeout="true" URIEncoding="UTF-8"/>

 

maxThreads="X" 表示最多同时处理X个连接

minSpareThreads="X" 初始化X个连接

maxSpareThreads="X" 表示如果最多可以有X个线程,一旦超过X个,则会关闭不在需要的线程

acceptCount="X" 当同时连接的人数达到maxThreads时,还可以排队,队列大小为X.超过X就不处理

猜你喜欢

转载自blog.csdn.net/lelemom/article/details/82843594