JDK自带工具jstat

发布时间 2023-05-24 19:55:22作者: 不忘初心2021

打印类加载器信息,其中8297为java项目的进程号,可以使用jps名称打印java所有项目的进程号

jstat -class 8297

 打印编译情况

jstat -compiler 8297

 编译16705,编译失败一个,失败的方法sun/misc/URLClassPath getLoader

统计堆空间的情况,间隔时间2秒,执行5次

jstat -gc 8297 2000 5

 

 统计堆的占比情况

jstat -gcutil 8297 2000 5

  

 

 启动类配置

 

最大堆   最小堆  年轻代   设置串行的垃圾回收器   只要有垃圾回收就打印日志
-Xms20M -Xmx20M -Xmn10M -XX:+UseSerialGC -XX:+PrintGCDetails -verbose:gc

  输出堆内存变化

 

 Full GC (Allocation Failure)表示年轻代没有足够的区域存放需要分配的数据而出现的失败

 A new max generation size of 1023936k will be used.这里显示最大不能超过999M

调整配置为

-Xms800M -Xmx800M -Xmn300M -XX:+UseSerialGC -XX:+PrintGCDetails -verbose:gc

  

 

 这里需要说明的是年轻代和老年代设置的内存不能超过堆内存的大小