Linux查看jvm相关参数以及设置调优参数

40 篇文章 0 订阅
28 篇文章 0 订阅

1、查看jvm相关参数

1.1、查看Java进程命令

jcmd

会显示出来对应的Java进程id
在这里插入图片描述

1.2、查看堆内存各个区域的使用大小、具体大小和GC次数以及耗时

 jstat -gc 4036145

jstat -gc 进程id
在这里插入图片描述
各个参数的含义。
如上图,4036145的进程,FGCT是0.452,FGC是4.平均每次full gc耗时0.11秒。
YGCT是18.288,YGC是3207。平均每次young gc耗时0.006秒。可以看出来,full gc明显比young gc耗时要多得多,所以尽量避免full gc。
各个参数的含义

1.3、查看堆各个区域的使用率以及GC情况

jstat -gcutil 4036145

jstat -gcutil 进程id。
在这里插入图片描述
各个参数的含义
在这里插入图片描述

1.4、查看jvm参数

 jinfo -flags 4036145

在这里插入图片描述
各个参数的含义
-XX:CICompilerCount=2:设置编译器线程数为 2,用于编译字节码为本地机器代码。
-XX:InitialHeapSize=60817408:设置初始堆大小为 60817408 字节。
-XX:MaxHeapSize=964689920:设置最大堆大小为 964689920 字节。
-XX:MaxNewSize=321388544:设置年轻代最大大小为 321388544 字节。
-XX:MinHeapDeltaBytes=524288:设置堆大小调整的最小增量为 524288 字节。
-XX:NewSize=19922944:设置年轻代初始大小为 19922944 字节。
-XX:OldSize=40894464:设置年老代初始大小为 40894464 字节。
-XX:+UseCompressedClassPointers:启用压缩的类指针,以减少堆内存使用。
-XX:+UseCompressedOops:启用压缩的普通对象指针,以减少堆内存使用。
-XX:+UseParallelGC:使用并行垃圾收集器,在多个线程中进行垃圾回收操作。

1.5、查看堆各个区域的大小以及使用情况

 jmap -heap 4036145

在这里插入图片描述

2、设置jvm启动的参数(调优)

像堆各个区域的大小在运行时是无法修改的。我们在启动时来设置下,还是上面的进程。在启动时设置NewSize为100m,MaxNewSize为400m。
所以我们的启动参数是

nohup java  -XX:NewSize=100m -XX:MaxNewSize=400m -jar /usr/local/weChatOfficialAccountProject-0.0.1-SNAPSHOT.jar > log.log 2>&1 &

nohup是后台方式启动;> log.log是把启动日志写入到log文件里。
启动好之后我们再次查看堆内存大小。下图可以看到我们设置的jvm参数生效了。
在这里插入图片描述
此外还有其它一些参数可以设置像
-Xms512m -Xmx1024m 分别是设置JVM 启动时的初始堆大小为512m和最大堆大小为1024m。

  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值