https://docs.oracle.com/en/java/javase/22/docs/specs/man/index.html
Java命令行监控工具
jps
查看系统中jvm进程, 其它的命令通常先使用jps查看进程号,然后在根据线程号获取jvm进程信息
jps -m 查看jvm进程并且带有参数查看
jps -v 查看传递到jvm的参数
[weblogic@newcoreSIT01 bin]$ sudo ./jps -v | grep 2175
2175 Server -Xms512m -Xmx1024m -XX:CompileThreshold=8000 -XX:PermSize=512m -XX:MaxPermSize=1024m -Dweblogic.Name=AdminServer -Djava.security.policy=/app/weblogic/Oracle/Middleware/wlserver_10.3/server/lib/weblogic.policy -Xverify:none -da -Dplatform.home=/app/weblogic/Oracle/Middleware/wlserver_10.3 -Dwls.home=/app/weblogic/Oracle/Middleware/wlserver_10.3/server -Dweblogic.home=/app/weblogic/Oracle/Middleware/wlserver_10.3/server -Dweblogic.management.discover=true -Dwlw.iterativeDev= -Dwlw.testConsole= -Dwlw.logErrorsToConsole= -Dweblogic.ext.dirs=/app/weblogic/Oracle/Middleware/patch_wls1036/profiles/default/sysext_manifest_classpath:/app/weblogic/Oracle/Middleware/patch_ocp371/profiles/default/sysext_manifest_classpath -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=10899,server=y,suspend=n -Djava.compiler=NONE
jstat
显示JVM的性能统计信息,
常见用法:jstat -<option> [-t] [-h<lines>] <vmid> [<interval> [<count>]]
S0C 存活区0的容量(KB)
S1C 存活区1的容量(KB)
S0U 存活区0使用的空间 (KB).
S1U 存活区1的利用空间 (KB).
EC Eden区的容量(KB).
EU Eden区利用的容量(KB).
OC 老年代容量(KB).
OU 老年代使用容量(KB).
PC 当前永久带的容量(KB).
PU 永久带使用容量(KB).
YGC 发生了多少次Young GC
YGCT Young GC的时间
FGC Full GC的次数
FGCT Full GC的收集时间
GCT 总共的GC时间.
jstack
查看线程堆栈信息,在发生死锁的时候可以利用这个命令查找死锁或者在发生死循环的时候利用此命令排查。
jstack vmpid 会打印线程的堆栈信息。通过堆栈可以查看具体线程正在执行那些代码,厦门演示两个使用jstack排查死锁与死循环的命令。
Java命令行监控工具
jps
查看系统中jvm进程, 其它的命令通常先使用jps查看进程号,然后在根据线程号获取jvm进程信息
jps -m 查看jvm进程并且带有参数查看
jps -v 查看传递到jvm的参数
[weblogic@newcoreSIT01 bin]$ sudo ./jps -v | grep 2175
2175 Server -Xms512m -Xmx1024m -XX:CompileThreshold=8000 -XX:PermSize=512m -XX:MaxPermSize=1024m -Dweblogic.Name=AdminServer -Djava.security.policy=/app/weblogic/Oracle/Middleware/wlserver_10.3/server/lib/weblogic.policy -Xverify:none -da -Dplatform.home=/app/weblogic/Oracle/Middleware/wlserver_10.3 -Dwls.home=/app/weblogic/Oracle/Middleware/wlserver_10.3/server -Dweblogic.home=/app/weblogic/Oracle/Middleware/wlserver_10.3/server -Dweblogic.management.discover=true -Dwlw.iterativeDev= -Dwlw.testConsole= -Dwlw.logErrorsToConsole= -Dweblogic.ext.dirs=/app/weblogic/Oracle/Middleware/patch_wls1036/profiles/default/sysext_manifest_classpath:/app/weblogic/Oracle/Middleware/patch_ocp371/profiles/default/sysext_manifest_classpath -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=10899,server=y,suspend=n -Djava.compiler=NONE
jstat
显示JVM的性能统计信息,
常见用法:jstat -<option> [-t] [-h<lines>] <vmid> [<interval> [<count>]]
S0C 存活区0的容量(KB)
S1C 存活区1的容量(KB)
S0U 存活区0使用的空间 (KB).
S1U 存活区1的利用空间 (KB).
EC Eden区的容量(KB).
EU Eden区利用的容量(KB).
OC 老年代容量(KB).
OU 老年代使用容量(KB).
PC 当前永久带的容量(KB).
PU 永久带使用容量(KB).
YGC 发生了多少次Young GC
YGCT Young GC的时间
FGC Full GC的次数
FGCT Full GC的收集时间
GCT 总共的GC时间.
jstack
查看线程堆栈信息,在发生死锁的时候可以利用这个命令查找死锁或者在发生死循环的时候利用此命令排查。
jstack vmpid 会打印线程的堆栈信息。通过堆栈可以查看具体线程正在执行那些代码,厦门演示两个使用jstack排查死锁与死循环的命令。
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 《HelloGitHub》第 107 期
· 从文本到图像:SSE 如何助力 AI 内容实时呈现?(Typescript篇)
· 全程使用 AI 从 0 到 1 写了个小工具