您的位置 首页 java

Java的JVM性能调优相关:JVM参数介绍

jvm 参数——种类

  1. 标准参数:以-开头的参数,所有的JVM都遵循;

  2. 非标准参数:以-X开头的参数,各个JVM的实现都不相同,并且不保证 向后兼容

  3. 不稳定参数:以–XX开头的参数,各个JVM的实现都不相同,并且不保证向后兼容,甚至随时会被取消。

JVM参数——标准参数——如何查询标准参数

java -?

JVM参数——标准参数—— -server参数

在服务器上运行java程序必须要加上-server参数,启动速度比客户端模式慢,不过在性能和内存管理效率方面(GC都是并行的)很不错。

JVM参数——标准参数 —— -classpath/-cp参数

类的搜索路径,可以定义多个,用;号分隔。

当前目录默认是类的搜索路径。

运行结果如下:

JVM参数——标准参数—— -DpropertyName=value参数

定义系统全局属性

运行结果:

JVM参数——非标准参数——查询

java -X

JVM的内存结构

JVM参数——非标准参数—— -Xms=NNN -Xmx=NNN

-Xms堆的初始大小,默认值为总物理内存的64分之一。

-Xmx堆的最大值

如果-Xms和-Xmx的值不同,表示堆的大小是可变的,这会导致抖动现象,所以建议把-Xms和-Xmx设置为一样大小。

JVM参数——非标准参数—— -Xmn=NNN

该参数设置新生代内存的大小(伊甸园空间、幸存者From空间、幸存者To空间)。

JVM参数——非标准参数—— -Xss=NNN

-Xss用于设置线程的栈内存的大小,栈内存默认值为1M,

JVM参数——非标准参数—— -Xloggc:file

把GC的日志记录到文件中,跟-verbose:gc类似。

JVM参数——非稳定参数——分类

性能参数:细粒度地设置JVM的内存大小,用于调优JVM

行为参数: 用于设置JVM的GC的算法和种类等,可以改变JVM的行为。

调试参数:可以更详细打印出jvm的运行情况

JVM参数——非稳定参数——使用方法

-XX:+<option> 启用某个选项

-XX:-<option> 不启用某个选项

-XX:<option>=< number >[单位]/<string> 给选项设置一个数字或字符类型值

JVM参数——非稳定参数——性能参数—— -XX:NewSize=NNN -XX:MaxNewSize=size

设置新生代内存的大小

JVM参数——非稳定参数——性能参数—— -XX:MaxPermSize=NNN -XX:PermSize=NNN

设置方法区的内存大小

JVM参数——非稳定参数——性能参数——-XX:MaxTenuringThreshold=5

对象经过5次以上MinorGC之后还存活着就会进入老年代

JVM参数——非稳定参数——性能参数——-XX:NewRatio=2

新生代与老生代内存的比

JVM参数——非稳定参数——性能参数——-XX:SurvivorRatio=8

幸存者空间有两个,幸存者From空间和幸存者To空间,From和To的大小是一样的。

-XX:SurvivorRatio=8等于-XX:SurvivorRatio=8:1:1

伊甸园空间:幸存者From空间:幸存者To空间=8:1:1

JVM参数——非稳定参数——行为参数——-XX:-UseSerialGC -XX:-UseParallelGC

采用串行、并行垃圾收集器

JVM参数——非稳定参数——调试参数——-XX:HeapDumpPath=./java_pid<pid>.hprof、-XX:-HeapDumpOnOutOfMemoryError

堆信息日志的的路径;当抛出OOM异常时,到处堆中的信息

JVM参数——非稳定参数——调试参数——-XX:HeapDumpPath=./java_pid<pid>.hprof、-XX:-HeapDumpOnOutOfMemoryError

堆信息日志的的路径;当抛出OOM异常时,到处堆中的信息

JVM参数——非稳定参数——调试参数——-XX:-PrintGC、-XX:-PrintGC Details

打印GC的信息

文章来源:智云一二三科技

文章标题:Java的JVM性能调优相关:JVM参数介绍

文章地址:https://www.zhihuclub.com/179503.shtml

关于作者: 智云科技

热门文章

网站地图