JDK基础命令及参数速查

一.总述

jmap

此命令可以用来查看内存信息,实例个数以及占用内存大小

Jstack

用jstack加进程id 查找线程运行状况

Jinfo

查看正在运行的Java应用程序的扩展参数

jstat

查看堆内存各部分的使用量,以及加载类的数量

二.分述

  1. Jmap

查看历史生成的实例

jmap -histo [pid]

查看当前存活的实例

jmap -histo:live [pid]

堆dump文件获取

jmap -dump:format=b,file=test.hprof [pid]

堆溢出自动导出dump文件

启动参数追加:

-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=...

  1. Jstack

jstack解决死锁

查看线程运行状况

jstack [pid]

查看指定线程

jstack [pid] | grep 0x1106

查看后十行记录

-A 10

  1. Jinfo

查看JVM的参数

jinfo -flags [pid]

查看JVM指定参数值

jinfo -flag MaxHeapSize [pid]

查看JVM系统参数

jinfo -sysprops [pid]

  1. Jstat

命令格式

jstat [-命令选项] [pid] [间隔时间(毫秒)] [查询次数]

垃圾收集统计

jstat -gc [pid]

S0C:第一个幸存区的大小,单位KB

S1C:第二个幸存区的大小

SOU:第一个幸存区的使用大小

S1U:第二个幸存区的使用大小

EC:伊甸园区的大小

EU:伊甸园区的使用大小

OC:老年代大小

OU:老年代使用大小

MC:方法区大小(元空间)

MU:方法区使用大小

CCSC:压缩类空间大小

CCSU:压缩类空间使用大小YGC:年轻代垃圾回收次数

YGCT:年轻代垃圾回收消耗时间,单位s

FGC:老年代垃圾回收次数

FGCT:老年代垃圾回收消耗时间,单位SGCT:垃圾回收消耗总时间,单位s

堆内存统计

jstat -gccapacity [pid]

NGCMN:新生代最小容量NGCMX:新生代最大容量

NGC:当前新生代容量

S0C:第一个幸存区大小

S1C:第二个幸存区的大小

EC:伊甸园区的大小

OGCMN:老年代最小容量OGCMX:老年代最大容量

OGC:当前老年代大小

OC:当前老年代大小

MMCMN:最小元数据容量

MCMX:最大元数据容量MC:当前元数据空间大小CCSMN:最小压缩类空间大小CCSMX:最大压缩类空间大小CCSC:当前压缩类空间大小

YGC:年轻代gc次数

FGC:老年代GC次数

新生代垃圾回收统计

jstat -gcnew [pid]

S0C:第一个幸存区的大小

S1C:第二个幸存区的大小

S0U:第一个室存区的使用大小

S1U:第二个幸存区的使用大小

TT:对象在新生代存活的次数

MTT:对象在新生代存活的最大次数

DSS:期望的幸存区大小

EC:伊甸园区的大小

EU:伊甸园区的使用大小

YGC:年轻代垃圾回收

YGCT:年轻代垃圾回收消耗时间

新生代内存统计

jstat -gcnewcapacity [pid]

NGCMN:新生代最小容量

NGCMX:新生代最大容量

NGC:当前新生代容量

S0CMX:最大幸存1区大小

S0C:当前幸存1区大小

S1CMX:最大幸存2区大小

S1C:当前幸存2区大小

ECMX:最大伊甸园区大小

EC:当前伊甸园区大小

老年代垃圾回收统计

jstat -gcold [pid]

MC:方法区大小

MMU:方法区使用大小

CCSC:压缩类空间大小

CCSU:压缩类空间使用大小

OU:老年代使用大小

YGC:年轻代垃圾回收次数

FGC:老年代垃圾回收次数

FGCT:老年代垃圾回收消耗时间

GCT:垃圾回收消耗总时间

老年代内存统计

jstat -gcoldcapacity [pid]

OGCMN:老年代最小容量

OGCMX:老年代最大容量

OGC:当前老年代大小

OC:老年代大小

YGC:年轻代垃圾回收次数

FGC:老年代垃圾回收次数

FGCT:老年代垃圾回收消耗时间

GCT:垃圾回收消耗总时间

  • 12
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Linux系统上安装JDK 17的命令如下: 1. 首先,创建一个用于安装JDK 17的目录,例如 `/home/jdk17`。你可以使用以下命令创建目录: ``` mkdir /home/jdk17 ``` 2. 下载JDK 17安装包。你可以使用以下命令从Oracle官方网站下载: ``` wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz -P /home/jdk17/ ``` 或者,如果你无法访问Oracle官方网站,你可以使用以下命令从另一个可靠的下载源下载: ``` wget http://49.232.8.65/jdk/jdk17/jdk-17_linux-x64_bin.tar.gz -P /home/jdk17/ ``` 3. 解压缩安装包。使用以下命令解压缩下载的安装包: ``` tar -zxvf /home/jdk17/jdk-17_linux-x64_bin.tar.gz -C /home/jdk17/ ``` 4. 配置环境变量。编辑你的 `~/.bashrc` 或 `~/.bash_profile` 文件,并将以下行添加到文件末尾: ``` export JAVA_HOME=/home/jdk17/jdk-17 export PATH=$JAVA_HOME/bin:$PATH ``` 5. 使环境变量生效。使用以下命令使环境变量生效: ``` source ~/.bashrc ``` 或 ``` source ~/.bash_profile ``` 6. 验证安装。运行以下命令验证JDK 17是否成功安装: ``` java -version ``` 你应该能够看到类似以下输出的版本信息: ``` java version "17" 2021-09-14 LTS Java(TM) SE Runtime Environment (build 17+35-LTS-2724) Java HotSpot(TM) 64-Bit Server VM (build 17+35-LTS-2724, mixed mode, sharing) ``` 这样,你就成功在Linux系统上安装了JDK 17并配置了相关的环境变量。现在你可以编写并执行HelloWorld程序来测试安装是否成功。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值