Tomcat+JVM调优

      

在服务器端开启Headless模式

server

开启JVM Server模式

Xms5g Xmx5g

设置堆的初始值和最大值

Xmn3g

设置年轻代堆大小

XX:PermSize=256M XX:MaxPermSize=512M

设置永久代大小

XX:+UseConcMarkSweepGC

使用CMS垃圾收集器

XX:CMSInitiatingOccupancyFraction=65

触发CMS收集的内存阀值

XX:+UseParNewGC

设置年轻代为多线程垃圾收集器

XX:+PrintGCDetails

打印详细的GC信息

XX:+PrintHeapAtGC

进行GC的前后打印出堆的信息

XX:+PrintGCDateStamps

输出GC的时间戳

Xloggc:/bankapp/tomcat/logs/gc.log

GC日志的存放路径

XX:+HeapDumpOnOutOfMemoryError

发生OOM时产生一个heap dump

XX:HeapDumpPath=/bankapp/tomcat/logs/heapdump

Heap dump文件存放路劲






JAVA_OPTS="-Djava.awt.headless=true-server –Xms5g Xmx5gXmn3g-XX:PermSize=256M-XX:MaxPermSize=512M-XX:+UseConcMarkSweepGC-XX:CMSInitiatingOccupancyFraction=65-XX:+UseParNewGC-XX:+PrintGCDetails-XX:+PrintHeapAtGC-XX:+PrintGCTimeStamps-Xloggc:/bankapp/tomcat/logs/gc.log-XX:+HeapDumpOnOutOfMemoryError-XX:HeapDumpPath=/bankapp/tomcat/logs/heapdump"




jps-lv  列出所有java进程

第一个数字为pid,后续操作都要用到

第二个为JVM参数和完整的执行类名



jstatgcutil <pid><interval

查看java进程的gc情况

以百分比显示每个区域的内存使用情况

参数<interval>表示没多少毫秒刷新一下


jmap–heap <pid查看java进程的堆信息

jmap-dump:[live,]format=b,file=<filename><pid>

生成heapdump文件


jmap-histo[:live]<pid>

打印每个class的实例数目,内存占用,类全名信息

可用于强制fullgc









  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值