发布于2026-07-11 阅读(0)
扫一扫,手机访问
对于在Debian系统上运行的Ja va应用,监控其状态是运维和开发的必备技能。从快速定位资源占用,到深入分析JVM内部行为,再到生产环境的远程监控,每一步都有对应的成熟工具。下面从几个层面展开,看看如何系统性地掌握Ja va应用的健康状况。
在Debian系统中,可通过系统自带命令快速了解Ja va进程的资源使用情况:

top/htop:实时显示系统进程的CPU、内存占用。运行top后按/键搜索Ja va进程名称(如ja va),或使用htop(需安装:sudo apt install htop)获得更直观的界面,支持颜色标识和快捷操作。ps:查看Ja va进程的详细信息,如ps -ef | grep ja va可列出所有Ja va进程的PID、启动命令及运行时间。systemctl:若Ja va应用以systemd服务运行(如your-ja va-service.service),可通过systemctl status your-ja va-service.service查看服务状态、启动时间、日志摘要及资源限制。JDK提供的工具可直接监控JVM内部状态,无需额外安装第三方库,上手非常方便:
jps:列出当前系统的Ja va进程ID及主类名,用法为jps -l(-l显示主类全名),快速定位需要监控的Ja va进程。jstat:监控JVM垃圾回收(GC)、类加载、JIT编译等性能指标。常用命令如jstat -gcutil 1000 (每秒刷新一次,显示堆内存各区域使用率、GC次数及耗时)、jstat -class (查看类加载/卸载数量)。jstack:生成Ja va线程的堆栈跟踪,用于分析线程阻塞、死锁等问题。用法为jstack > thread_dump.txt (将输出保存到文件便于分析)。jmap:生成Ja va堆转储快照(Heap Dump),用于分析内存泄漏。用法为jmap -dump:format=b,file=heapDump.hprof (format=b表示二进制格式,file指定保存路径)。jconsole:图形化工具,集成内存、线程、类加载、CPU监控功能。启动命令为jconsole,选择目标Ja va进程后即可查看实时数据(如堆内存使用曲线、线程活跃数)。VisualVM:功能更强大的图形化工具,支持插件扩展(如Visual GC插件查看GC详情)。安装命令为sudo apt install visualvm,启动后通过“本地进程”或远程连接(需配置JMX)监控Ja va应用。若需远程监控Ja va应用(如生产环境服务器),需通过JMX(Ja va Management Extensions)暴露监控接口:
为自定义端口,如9010):ja va -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port= -Dcom.sun.management.jmxremote.authenticate=false # 生产环境建议开启认证 -Dcom.sun.management.jmxremote.ssl=false # 生产环境建议开启SSL -jar your-application.jar jconsole、VisualVM或第三方工具(如Prometheus+JMX Exporter)连接到<服务器IP>:,即可远程查看JVM指标(如内存使用、线程数、GC情况)。对于复杂的生产环境,建议使用专业监控工具实现长期、自动化的监控与报警:
若Ja va应用使用数据库连接池(如Druid),可开启其内置监控功能,查看SQL执行统计、连接池状态等:
application.properties中添加:spring.datasource.druid.stat-view-servlet.enabled=truespring.datasource.druid.stat-view-servlet.url-pattern=/druid/*http://<服务器IP>:<端口>/druid(默认用户名/密码为admin),即可查看SQL执行次数、执行时间、连接池活跃连接数等指标。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8