常用JVM命令
-
jps
- 查看当前运行的Java进程
-
jmap -histo 4123 > obj_info.txt
- 查看实例个数以及占用内存大小,将其写入obj_info.txt文件中,其中有这几个关键字段
- num:序列号
- instances:实例数量
- bytes:占用空间
- class name 类名称
-
jmap -heap 4123
- 查看堆内存信息
-
jmap -dump:format=b,file=eureka 4123
- 重点,用来分析OOM问题,堆内存dump命令
-
JVisualVM
- 将jvm.dump文件 导入到JVisualVM 工具中进行解析过程,在bin目录下
- 可以查看到堆内存中具体对象信息,从而定位问题
- 查看线程状态
-
jstack 64992
- 查看线程状态
-
top -p 72414
- 查看CPU使用状态,
常用linux命令
-
top
- 只展示Java进程:shift + H
- 安内存使用:shift + M
- 线程查看方式:top -T -p xxx
-
ps命令
常用参数:
a:显示当前终端下的所有进程信息,包括其他用户的进程。
u:使用以用户为主的格式输出进程信息。
x:显示当前用户在所有终端下的进程。
-e:显示系统内的所有进程信息。
-l:使用长(long)格式显示进程信息。
-f:使用完整的(full)格式显示进程信息。
-T:查看进程下面的子线程
- 线程查看方式:ps -T -p xxx