[[343690]]澳门六合彩电子游戏
作家 | 悟空哥
起原 | 悟空聊架构(ID:PassJava666)
本实验的标的是素质 JVM 的三大参数类型。在JVM调优顶用到的最多的 XX 参数,而怎样去稽察和竖立 JVM 的 XX 参数亦然调优的基本功,本节以实验的方式素质 JVM 参数的稽察和竖立。但愿环球能有所启发。
澳门六合彩电子游戏
标配参数
常见标配参数
-version,获得JDK版块 -help,获得匡助 -showverision,获得JDK版块和匡助源流实验 1 - 稽察标配参数
实验规律:
稽察Java JDK 版块
java -version
实验 1-1
不错看到Java JDK 版块为1.8.0_131
稽察 Java 匡助文档java -help
实验 1-2
稽察版块和匡助文档
java -showversion
实验 1-3
X 参数
X 参数简介
咱们常用的javac环球王人知谈是把java代码编译成 class 文 Java 文献,那么 class 文献何如去扩充呢?这里用到了三个X参数来阐明 class 文献何如在臆造机内部跑起来的。
-Xint:径直发挥扩充 -Xcomp:先编译资腹地代码再扩充 -XMixed:羼杂模式(既有编译扩充也有发挥扩充)源流实验 2 - 稽察和竖立X参数
稽察版块
java -version
在WebIDE的甩手台窗口扩充Java -version 后,不错看到我的环境是羼杂模式扩充java圭臬的。
实验 2-1
修改编译模式为发挥扩充模式
java -Xint -version
在WebIDE的甩手台窗口扩充敕令
152期:击鼓震乾坤,中奖庆人生开(165)
类型分析:福彩3D在上一个30期周期内(第2023098期-第2023127期),豹子号码没有出现,组三号码开出7次,所占比例为23%,组六号码出现23期,出现比例为77%,其中组六号码开出比例明显较高。
实验 2-2
修改编译模式为只编译模式
java -Xcomp -version
实验 2-3
XX 参数
XX 参数简介
XX 参数有两种类型,一种是 Boolean 类型,另外一种是键值对类型。
Boolean 类型 公式:-XX:+某个属性 粗略,-XX:-某个属性 +暗意开启了这个属性,-暗意关闭了这个属性。 案例:-XX:-PrintGCDetails,皇冠入口暗意关闭了GC笃定输出 key-value类型 公式:-XX:属性key=属性value 案例:-XX:属性metaspace=2000000,竖立Java元空间的值为2000000。源流实验 3 - 稽察参数是否开启
本实验主要素质如下实践:稽察运行的 Java 圭臬 PrintGCDetails 参数是否开启
皇冠代理 编写一个一直运行的 Java 圭臬 稽察该诈骗圭臬的进度 id 稽察该进度的 GCDetail 参数是否开启在 WebIDE 上右键单击菜单,采选 New File 创建新文献
New File
创建文献名为 demoXXparam.java
demoXXparam.java
皇冠博彩网
在 WebIDE 上编写 demoXXparam.java
public class demoXXparam { public static void main(String[] args) throws InterruptedException { System.out.println("hello XX params"); Thread.sleep(Integer.MAX_VALUE); } }
在 WebIDE 的甩手台窗口编译 demoXXparam.java 代码
javac demoXXparam.java
编译代码
编译之后,会在现时文献夹产生咱们所编写的 demoXXparam 类的 demoXXparam.class 字节码文献
分娩Class文献
博彩平台注册送免费电竞比赛
在 WebIDE 上运行 demoXXparam 代码
java demoXXparam
运行Java圭臬
输出:
hello XX params
在 WebIDE 中新开一个甩手台窗口
Terminal->New Terminal
iba色碟开启新甩手台窗口
稽察通盘的运行的java圭臬,-l 暗意打印出class文献的包名
jps -l
jps
发现demoXXparam进度的id为 518
稽察 demoXXparam 圭臬是否开启了PrintGCDetails这个参数
PrintGCDetails: 在发生垃圾回收时打印内存回收日记,并在进度退出时输出现时内存各区域分拨情况
jinfo -flag PrintGCDetails 518
jinfo
效果如下:
-XX:-PrintGCDetails
上头提到 -号暗意关闭,是以现时 demo 圭臬莫得开启 PrintGCDetails参数。
源流实验 4 - 开启参数
在 WebIDE 甩手台强制退出demoXXparam圭臬ctrl + c然后清算屏幕
clear然后以参数 -XX:+PrintGCDetails 运行 demoXXparam 圭臬
java -XX:+PrintGCDetails demoXXparam
实验 4
输出:
hello XX params
稽察demoXXparam进度的 id
进度 id
皇冠体育赛事
不错看到demoXXparam进度 id 为 1225
稽察 demoXXparam 的竖立参数 PrintGCDetails
大开一个新的甩手台窗口,扩充以下敕令来稽察进度为 1225 的 PrintGCDetails参数是否开启
jinfo -flag PrintGCDetails 1225
PrintGCDetails 参数
不错看到PrintGCDetails是开启的,+号暗意开启。
皇冠手机登录入口源流实验 5 - Key-Value 类型参数值
稽察元空间的值
jinfo -flag MetaspaceSize 526
MetaspaceSize 大小
由此不错得出元空间的大小为 21 M。
竖立元空间的值为 128 M
java -XX:MetaspaceSize=128m demoXXparam
稽察元空间的大小
jinfo -flag MetaspaceSize 1062
休养元空间大小
最常见的 -Xms 和 -Xmx 属于哪种参数?
-Xms参数代表-XX:InitialHeapSize ,开动化堆内存(默许只会用最大物理内存的64分1) -Xmx:参数代表-XX:MaxHeapSize ,大堆内存(默许只会用最大物理内存的4分1)起了一名,但依然属于XX参数。
源流实验 6 - 竖立 -XX:InitialHeapSize 和 -XX:MaxHeapSize 的值。
java -XX:InitialHeapSize=200m demoXXparam 粗略 java -Xms200m demoXXparam
稽察 InitialHeapSize 参数的值,大小为 200 M。
竖立 InitialHeapSize
java -XX:MaxHeapSize=200M demoXXparam 粗略 java -Xmx200m demoXXparam
稽察 MaxHeapSize 参数的值,大小为 200 M。
竖立 MaxHeapSize
膨胀:稽察 Java 圭臬已竖立的通盘参数值
jinfo -flags <进度id>
mark
Non-Defalut VM flags 代表参数类型是JVM自带的参数。 Command line 代表是用户自界说的参数
怎样稽察出厂竖立和自界说竖立的XX竖立项源流实验
7 - 稽察出厂默许竖立的通盘XX竖立项
java -XX:+PrintFlagsInitial -version
PrintFlagsInitial
源流实验 8 - 稽察 JVM 现时通盘XX竖立项
皇冠客服飞机:@seo3687java -XX:+PrintFlagsFinal -version
PrintFlagsFinal
咱们不错看到几个要道信息:
[Global flags]:全局参数,若是自界说修改了某个诈骗的参数,并不会修改全局参数比如之前咱们修改了MetaspaceSize为128m,但列表内部依然21m。
Global flags
:=:参数已被修改,如下图所示InitialHeapSize开动化堆内存参数已修改为264241152
归来如下:
出厂竖立和自界说参数竖立
源流实验 9 - 运行圭臬时打印XX竖立选项
java -XX:+PrintFlagsFinal -XX:+InitialHeapSize=150M demoXXparam
不错看到修改后的值为 157286400(150 M)
运行圭臬时打印XX竖立选项
源流实验 10 - 稽察 JVM 自动竖立的粗略用户手动竖立的XX选项(非诈骗圭臬的)
java -XX:+PrintCommandLineFlags -version
会打印出如下参数:
JVM 自动竖立的XX选项
实验归来
本节实验课学习了怎样稽察基本参数、X参数、XX参数和竖立XX参数。以及用好jps和jinfo用具来稽察进度和竖立参数。
JVM性能调优还有许多要讲的,一篇是讲不完的,我会分红几篇来为环球论说,形态主要以小实验的方式来为环球素质。
热闹本文转载自微信公众号「 悟空聊架构」,不错通过以下二维码暖热。转载本文请相关 悟空聊架构公众号。