Java gc信息设置和查看

Java gc信息设置和查看

参考:
https://www.cnblogs.com/mikevictor07/p/5024645.html
OOM不会导致JVM退出

引言

啥?设置GC以及查看GC信息
我都是java -jar **.jar
我low 逼啊

GC参数设置

GC参数含义
-verbose:gc打印GC的概要信息
-XX:+PrintGC打印GC的概要信息
-XX:+PrintGCDetails可以打印GC的详细信息
-XX:+PrintGCTimeStamps输出GC的时间戳(以基准时间的形式)
-XX:+PrintGCDateStamps输出GC的时间戳(以日期的形式,如 2013-05-04T21:53:59.234+0800)
-XX:+PrintHeapAtGC在进行GC的前后打印出堆的信息
-XX:+TraceClassLoading监控类的加载
-Xloggc:D:\gc.log输出GC文件(就不会输出到控制台了)
-XX:+HeapDumpOnOutOfMemoryErrorOOM时导出堆到文件
-XX:+HeapDumpPath导出OOM的路径
-XX:OnOutOfMemoryError参数允许用户指定当出现oom时,指定某个脚本来完成一些动作。
-XX:+UseGCLogFileRotation设置日志轮转
-XX:NumberOfGCLogFiles=10日志轮转个数
-XX:GCLogFileSize=10M日志大小
-XX:+DisableExplicitGC关闭显示GC
-XX:+PrintGCApplicationStoppedTime输出GC造成应用暂停的时间

java 监控

java -Dserver.port=9999 \
 -Xmx256m \
 -Xms256m \
 -Dcom.sun.management.jmxremote=true \
 -Dcom.sun.management.jmxremote.port=9102 \
 -Dcom.sun.management.jmxremote.rmi.port=9102 \
 -Dcom.sun.management.jmxremote.ssl=false \
 -Dcom.sun.management.jmxremote.authenticate=true \
 -Dcom.sun.management.jmxremote.access.file=$(pwd)/jmxremote.access \
 -Dcom.sun.management.jmxremote.password.file=$(pwd)/jmxremote.password \
 -Djava.rmi.server.hostname=192.168.11.110 \
 -jar \
 test-0.0.1-SNAPSHOT.jar

java 远程调试

java -Dserver.port=9999 \
 -Xmx256m \
 -Xms256m \
 -Xdebug \
 -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=39090 \
 -jar \
 test-0.0.1-SNAPSHOT.jar

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Linux中,可以使用以下命令查看Java GC(垃圾回收)情况: 1. jstat命令 jstat命令可以用来监视Java虚拟机(JVM)中的各种运行时信息,包括堆内存的使用情况、GC情况等。使用jstat命令需要指定以下参数: - -gc:表示要监视GC情况 - [interval]:表示监视的时间间隔,以毫秒为单位,默认为1000毫秒 - [count]:表示监视的次数,默认为无限次 例如,可以使用以下命令每隔5秒钟输出一次JVM的GC情况: ``` jstat -gc 5000 ``` 2. jmap命令 jmap命令可以用来生成堆内存的转储文件(Heap Dump),从而可以分析Java应用程序的内存使用情况。使用jmap命令需要指定以下参数: - -dump:表示生成堆转储文件 - [format]:表示转储文件的格式,可以是b、h、f和d等格式 - [file]:表示转储文件的输出路径和文件名 例如,可以使用以下命令生成一个二进制格式的堆转储文件: ``` jmap -dump:format=b,file=heap.bin <pid> ``` 其中,`<pid>`表示Java应用程序的进程ID。 3. jconsole命令 jconsole命令是一个图形化的监控工具,可以用来监视Java应用程序的各种运行时信息,包括内存使用情况、线程状态、GC情况等。使用jconsole命令可以更直观地了解Java应用程序的运行状态。使用jconsole命令时,需要先启动Java应用程序,并将其连接到jconsole。 以上是常用的查看Java GC情况的命令,不同的命令适用于不同的场景,可以根据实际情况选择使用。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值