Java面试题——JVM(2)
题目:你说你做过JVM调优和参数配置,请问如何盘点查看JVM系统默认值
文章目录
JVM参数类型
标配参数
-version
-help
java -showversion
X参数(了解)
-Xint:解释执行
-Xcomp:第一次使用就编译成本地代码
-Xmixed:混合模式
XX参数(重点)
Boolean类型
公式: -XX:+或者- 某个属性值(+表示开启,-表示关闭)
例子:
是否打印GC收集细节:
KV设置类型
公式: -XX:属性key=属性值value
例子:修改元空间大小
-XX:MaxTenuringThreshold =15 默认15次从young升到old
请问如何盘点查看JVM系统默认值
第一种 查看参数
首先通过jps查看进程号,然后用jinfo -flag 配置项 进程编号查看当前运行程序的配置。
jinfo -flags 进程号查看所有默认参数
第二种 查看JVM默认值
java -XX:+PrintFlagsInitial主要查看默认初始值
java -XX:+PrintFlagsFinal主要查看修改更新
java -XX:+PrintCommandLineFlags打印命令行参数
冒号等号:人为修改参数或jvm加载不一样修改过
坑题:两个经典参数: -Xms和-Xmx
-Xms:等价于-XX:initialHeapSize初始化堆内存
-Xmx:等价于-XX:MaxHeapSize最大堆内存
默认初始值
默认初始内存是电脑内存的1/4
初始堆内存大小为电脑内存的1/64