jvm参数配置在什么地方_JVM参数配置

709875e3e13a8536cf37b14999a1970e.png

JVM参数

  • JPS
  • 类似 UNIX 的 ps 命令。用户查看所有 Java 进程的启动类、传入参数和 Java 虚拟机参数等信息jps -l:输出主类的全名,如果进程执行的是 Jar 包,输出 Jar 路径
  • jstat
    用于收集 HotSpot 虚拟机各方面的运行数据,在没有 GUI,只提供了纯文本控制台环境的服务器上,它将是运行期间定位虚拟机性能问题的首选工具。
    • jstat -gcnew vmid :显示新生代信息;

e94a11bd9bb6246a638d910d3d609eef.png
image-20201225161025349

(SOC 第一个幸存区分配容量 SIC第二个幸存区容量 SOU已使用 SIU第二个已使用 TT对象在新生代存活的次数 MIT对象在新生代存活的最大次数 EC表示Eden区分配容量 EU已使用Eden区容量 YGC:年轻代垃圾回收次数 YGCT:年轻代垃圾回收时间)

    • jstat -gc 46003 2s 3 :查看gc的情况

e94a11bd9bb6246a638d910d3d609eef.png
image-20201225162342701

​ (SOC 第一个幸存区分配容量 SIC第二个幸存区容量 SOU已使用 SIU第二个已使用 EC表示Eden区分配容量 EU已使用Eden区容量

​ OC老年代已分配 OU已使用 MC元数据区已分配 MU已使用 CCSC压缩类空间大小 压缩类空间使用大小 YGC:年轻代垃圾回收次数 YGCT:年轻代垃圾回收时间 FGC:年老代垃圾回收次数 FGCT:年老代垃圾回收时间 GCT:总垃圾回收时间)

  • jstack :生成虚拟机当前时刻的线程快照jstack(Stack Trace for Java)命令用于生成虚拟机当前时刻的线程快照。线程快照就是当前虚拟机内每一条线程正在执行的方法堆栈的集合.
    生成线程快照的目的主要是定位线程长时间出现停顿的原因,如线程间死锁、死循环、请求外部资源导致的长时间等待等都是导致线程长时间停顿的原因。线程出现停顿的时候通过jstack来查看各个线程的调用堆栈,就可以知道没有响应的线程到底在后台做些什么事情,或者在等待些什么资源。

- jmap:生成堆转储快照

jmap(Memory Map for Java)命令用于生成堆转储快照。 如果不使用 jmap 命令,要想获取 Java 堆转储,可以使用 “-XX:+HeapDumpOnOutOfMemoryError” 参数,可以让虚拟机在 OOM 异常出现之后自动生成 dump 文件,Linux 命令下可以通过 kill -3 发送进程退出信号也能拿到 dump 文件。

jmap 的作用并不仅仅是为了获取 dump 文件,它还可以查询 finalizer 执行队列、Java 堆和永久代的详细信息,如空间使用率、当前使用的是哪种收集器等。和jinfo一样,jmap有不少功能在 Windows 平台下也是受限制的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值