JVM常用启动参数+常用内存调试工具

Posted cing

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JVM常用启动参数+常用内存调试工具相关的知识,希望对你有一定的参考价值。

一、JVM常用启动参数

-Xms:设置堆的最小值。

-Xmx:设置堆的最大值。

-Xmn:设置新生代的大小。

-Xss:设置每个线程的栈大小。

-XX:NewSize:设置新生代的初始值。

-XX:MaxNewSize:设置新生代的最大值。

-XX:PermSize:设置永久代的初始值。

-XX:MaxPermSize:设置永久代的最大值。

-XX:SurvivorRatio:年轻代中Eden区与Survivor区的大小比值。

-XX:PretenureSizeThreshold:令大于这个设置值的对象直接在老年代分配。

二、常用内存调试工具

jps:查看虚拟机进程的状况,如进程ID.

jmap:用于生成堆转储快照文件(某一时刻的)。

jhat:对生成的堆转储快照文件进行分析。

jstack:用来生成线程快照(某一时刻的)。生成线程快照的目的是定位线程长时间停顿的原因(死锁、死循环、IO等),通过查看各个线程的调用堆栈,就可以知道没有响应的线程在后台做了什么或等什么资源。

jstat:虚拟机统计信息监视工具。如显示垃圾收集的情况,内存使用的情况。

Jconsole:主要是内存监控和线程监控。内存监控:可以显示内存的使用情况。线程监控:遇到线程停顿时,可以使用这个功能。

以上是关于JVM常用启动参数+常用内存调试工具的主要内容,如果未能解决你的问题,请参考以下文章

JVM 监控,调优,调试

JVM常用调试工具介绍

JVM核心参数配置常用调试命令工具与调优思路

虚拟机常用的内存查看与分析工具

Windows和Linux下排查C++软件异常的常用调试器与内存检测工具详细介绍

73.JVM内存基础结构,参数分类,推荐的配置项,参数混用问题,常用工具,常用命令