Tomcat性能调优之JVM

Tomcat是一款Java应用,那么JVM的配置便于运行性能密切相关,而java优化重点则集中在内存分配和GC策略调整上,因为内存直接会影响服务器的运行效率及吞吐量,JVM垃圾回收机制则会不同程度导致程序运行中断。可以根据应用程序的特点,选择不同的垃圾回收策略,调整JVM垃圾回收策略,可以极大减少垃圾回收次数,提升垃圾回收效率改善程序运行性能。

1)内存优化参数

 -server:启动server以服务端模式运行,启动服务较慢但是请求速度较快建议开启。

-Xms:最小堆内存,建议与-Xmx设置相同,设置相同避免在tomcat运行期间内对内存进行重新分配,造成资源浪费

-Xmx:最大堆内存,建议与-Xms设置相同,设置相同避免在tomcat运行期间内对内存进行重新分配,造成资源浪费

建议设置为可用内存的80%(可用内存指的是除去系统使用,及其它程序使用后剩余的内存)

-XX:MetaspaceSize 元空间初始值

-XX:MaxMetaspaceSize  元空间最大内存默认无限

-XX:MaxNewSize  新生代最大内存默认16M

-XX:NewRatio  年轻代和老年代大小比值,取值为整数默认为2不建议修改

-XX:SurvivorRatio  Eden区与Survivor区大小的比值,取值为整数默认为8不建议修改

 2)进行实际配置

windows下安装的tomcat配置文件为:catalina.bat (路径:tomcat-8.0.52/bin)

linux下安装的tomcat配置文件为:catalina.sh(路径:tomcat-8.0.52/bin)

在linux系统调优tomcat,关闭所有tomcat后看内存还剩余多少,将剩余内存的80%分配给服务器上面的tomcat

JAVA_OPTS="-server -Xms2048m -Xmx2048m -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=512m -XX:SurvivorRatio=8"

大约在一百零几行的位置添加

 配置完成重启tomcat

使用jmap查看是否变成了我们设置的2048

jmap   -heap  pid (pid 就是tomcat的进程号)

 

优化完成。

查看了一下某云服务器确实内存降低了。

 

posted @ 2020-07-30 17:48  點燈的人  阅读(265)  评论(0编辑  收藏  举报