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

1、JVM经常使用启动参数工具

-Xms:设置堆的最小值。线程

-Xmx:设置堆的最大值。调试

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

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

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

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

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

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

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

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

2、经常使用内存调试工具

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

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

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

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

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

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

相关文章
相关标签/搜索