JVM(Java虚拟机)
简单介绍一下JVM,JVM本质上是一个程序,用来执行字节码文件(.class)
JVM的参数查看
https://www.jianshu.com/p/c6a04c88900a
在控制台输入 jps 打印当前运行的虚拟机进程
//监视虚拟机运行状态
jstat -<option> <pid>
//生产堆存储快照
jmap -<option> <pid>
//生产线程快照
jstack -<option> <pid>
JVM各参数含义
https://segmentfault.com/a/1190000010603813
-Xms:设置最小堆值(初始堆内存大小,空间不足时再向系统申请扩容)
-Xmx:设置最大堆值
-Xmn:设置年轻代值(设置它等于最小值和最大值相同)
-XX:NewSize:设置年轻代最小值
-XX:MaxNewSize:设置年轻代最大值
-Xss:设置线程栈值大小
-XX:PermSize:设置永久代最小值
-XX:MaxPermSize:设置永久代最大值
-XX:SuriviorRatio:设置年轻代中Eden与s0的比例
-XX:NewRatio:设置老年代与年轻代的比例。
-XX:MinHeapFreeRatio:设置堆空间最小空闲比例。当堆空间的空闲比例小于这个数值时,JVM变主动申请内存空间。
-XX:MaxHeapFreeRation:设置堆空间最大空闲比例。当堆空间的空闲比例大于这个数值时,JVM会压缩堆空间,得到一个较小的堆空间。
-XX:TargetSuriviorRatio:设置surivior空间使用率,当surivior空间使用率达到这个数值时,会将对应的对象送入老年代。