Java应用在Ubuntu上的性能监控
小樊
40
2025-09-12 04:07:51
一、JDK自带工具
- jps:查看Java进程ID及名称,类似
ps -aux|grep java
。
- jstat:实时监控JVM内存、垃圾回收等指标,如
jstat -gcutil <pid> 5000 10
(每5秒输出一次,共10次)。
- jstack:导出线程堆栈信息,用于分析死锁或线程阻塞。
- jmap:生成堆内存快照,辅助排查内存泄漏。
- jconsole/VisualVM:图形化监控JVM性能,包括CPU、内存、线程等。
二、系统级命令
- top/htop:实时查看进程的CPU、内存占用。
- vmstat/iostat:监控虚拟内存、磁盘I/O性能。
三、第三方工具
- Prometheus+Grafana:
- Prometheus采集JVM指标(需配合JMX Exporter),Grafana可视化。
- Zabbix:企业级监控方案,支持Java进程状态监控。
- JProfiler/Arthas:深度性能分析,如方法耗时、内存泄漏定位。
四、APM工具
- Pinpoint/Glowroot:分布式系统监控,跟踪请求链路和性能瓶颈。
五、脚本监控
- 编写Shell脚本定期采集CPU/内存数据,如通过
top
命令获取CPU使用率并发送告警。
参考来源: