- jps 查看java进程
- jinfo 实时查看和调整JVM配置参数
- jstat 查看虚拟机性能统计信息
- jstack 查看线程堆栈信息
- jmap 生成堆转储快照
0 jinfo 查看或 调整Jvm参数
jinfo -flag name PID 查看某个java进程的name属性的值
比如:
jinfo -flag MaxHeapSize PID
jinfo -flag UseG1GC PID
调整用法 参数只有被标记为manageable的flags可以被实时修改
jinfo -flag [+|-] PID
jinfo -flag <name>=<value> PID
1 查看类装载信息
jstat -class PID 1000 10 查看某个java进程的类装载信息,每1000毫秒输出一次,共输出10次
2 查看垃圾收集信息
jstat -gc PID 1000 10
3 查看线程堆栈信息
jstack PID
4 打印出堆内存相关信息
jmap -heap PID
5 生成堆转储快照 手动
jmap -dump:format=b,file=heap.hprof PID
-- 发生OOM自动 Dum文件
#启动 heapDum 当发生OOM时
-XX:+HeapDumpOnOutOfMemoryError
# 指定文件路径
-XX:HeapDumpPath=heap.hprof
- a.Boolean类型
格式:-XX:[+-]<name> +或-表示启用或者禁用name属性
比如:-XX:+UseConcMarkSweepGC 表示启用CMS类型的垃圾回收器
-XX:+UseG1GC 表示启用G1类型的垃圾回收器
# 启动 打印所有JVM灿说
-XX:+PrintFlagsFinal
#启动 heapDum 当发生OOM时
-XX:+HeapDumpOnOutOfMemoryError
# 指定文件路径
-XX:HeapDumpPath=heap.hprof
- b.非Boolean类型
格式:-XX<name>=<value>表示name属性的值是value
比如:-XX:MaxGCPauseMillis=500
-Xms1000 等价于 -XX:InitialHeapSize=1000
-Xmx1000 等价于 -XX:MaxHeapSize=1000
-Xss100 等价于 -XX:ThreadStackSize=100
如何开启需要的垃圾收集器
(1)串行
-XX:+UseSerialGC
-XX:+UseSerialOldGC
(2)并行(吞吐量优先):
-XX:+UseParallelGC
-XX:+UseParallelOldGC
(3)并发收集器(响应时间优先)
-XX:+UseConcMarkSweepGC
-XX:+UseG1GC
- jsp 查看java进程
- 查看java进程 heap 信息