JVM与性能调优:性能监控与诊断工具之JVM监控工具实战(4)

JVM监控工具实战



开篇:程序员的修车工具箱

当一辆汽车突然抛锚,机械师会拿出诊断仪、听诊器和压力表。JVM监控工具就是程序员手中的"数字万用表",今天我们将化身车间主任,学习如何用这些工具诊断程序的"疑难杂症"。


第一章 基础检测:机械师的听诊器

1.1 jps:车牌登记系统

$ jps -l
9521 com.example.OrderService  # 正在运行的订单服务
12345 sun.tools.jps.Jps        # 工具自身

注释说明:

  • 类似停车场入口的车牌识别系统
  • -l 参数显示完整类名(完整车牌号)
  • 快速确认哪些车辆(Java进程)在厂区

1.2 jstat:发动机实时仪表

监测订单系统的内存使用:

$ jstat -gcutil 9521 1000 5
 S0     S1     E      O      M     CCS    YGC     YGCT    FGC    FGCT     GCT   
 0.00  99.80  67.45  35.22  95.30  92.45   15