监控 Java 应用程序
jconsole
启动一个图形化控制台,用于监控和管理 Java 应用程序。
jconsole [ options ] [ connection ... ]
jconsole的参数如下:
-interval=n:设置更新间隔为n秒(默认为4秒)。
-notile:初始时不平铺窗口(适用于两个或更多连接)。
-pluginpath plugins:指定要搜索JConsole插件的目录或JAR文件列表。插件路径应包含一个名为META-INF/services/com.sun.tools.jconsole.JConsolePlugin的provider-configuration文件,其中包含每个插件的一行。该行指定实现com.sun.tools.jconsole.JConsolePlugin类的完全限定类名。
-version:显示发布信息并退出。
-help:显示帮助消息。
-Jflag:将标志传递给运行jconsole命令的JVM。
jvisualvm
JavaVisualVM是一个图形用户界面工具,用于监控和分析在指定Java虚拟机(JVM)上运行的Java应用程序。它提供了关于JVM软件的直观信息。JavaVisualVM集成了多个监视、故障排除和分析实用程序,如jmap、jinfo、jstat和jstack。此外,它还可以通过插件扩展功能,例如jconsole命令提供的一些功能可以作为可选插件添加。
JavaVisualVM对于Java应用程序开发人员来说非常有用,因为它可以帮助他们进行故障排除、监控和改进应用程序的性能。它可以生成和分析堆转储,跟踪内存泄漏,执行和监控垃圾回收机制,以及执行轻量级内存和CPU分析。
要使用JavaVisualVM,您需要选择工具,然后在JavaVisualVM菜单中选择插件。您可以从标准JavaVisualVM插件库中进行选择,以扩展其功能。例如,jconsole命令的大部分功能可以通过MBeans选项卡和JConsole Plug-in Wrapper插件获得。
使用以下命令启动JavaVisualVM:
jvisualvm [ options ]
在启动Java VisualVM时,可以使用以下选项:
-Jjvm_option
将此jvm_option传递给JVM软件
Java VisualVM官网介绍:https://docs.oracle.com/javase/8/docs/technotes/guides/visualvm/intro.html
监控 JVM
jps♥♥♥♥♥
命令格式:
jps [ options ] [ hostid ]
jps命令用于列出目标系统上的Java HotSpot虚拟机(JVM)。该命令仅限于报告它具有访问权限的JVM信息。
如果在运行jps命令时没有指定hostid,它会在本地主机上搜索已检测到的JVM。如果指定了hostid,它会使用指定的协议和端口在指定的主机上搜索JVM,假设目标主机上运行着jstatd进程。
对于在目标系统上找到的每个已检测的JVM,jps命令会报告本地JVM标识符(lvmid)。lvmid通常是操作系统对JVM进程的进程识别号,但并不总是这样。在没有选项的情况下,jps会列出每个Java应用程序的lvmid,后面跟着应用程序类名或jar文件名的缩写形式。类名或