java - 确定 Linux 平台上远程机器上运行的 JVM 列表

标签 java linux rmi jmx

我需要确定远程机器上运行的 JVM 列表,完成后,使用 JMX 连接到每个 JVM。我是新手,经历过以下概念:
1.使用jps和jstat:我读到这些命令可能在未来的jdk版本中不可用。
2. 使用 java 类“virtualmachine().list”。但问题在于它可以帮助您获取 JVM 列表,但仅限于本地机器。我不知道如何连接到远程机器然后获取此列表。

谁能建议如何使用“virtualmachine().list”或任何其他方法来获取远程机器上的 JVM 列表?

问题是我研究过的所有连接到远程 JVM 的方法(包括 jconsole 的工作方式)都集中在一个特定的 JVM 上,我需要在其中提供(JVM 进程的)端口号。但我需要所有正在运行的 JVM 的列表。我怎样才能做到这一点 ?有可能吗?

最佳答案

一种选择是在远程机器上启动一个小型 Java 应用程序并让它运行 virtualmachine().list 或类似的程序,然后发回信息或使用 JMX 使其可访问。该应用程序可以一直运行,或者您可以远程启动它。

这里提到的一些其他想法:Get System Information of a Remote Machine (Using Java) .

关于java - 确定 Linux 平台上远程机器上运行的 JVM 列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13980832/

相关文章:

java - Android 无法解码 PHP base64 代码

java - MySQL 区分大小写

java - 如果对象在序列化之前被向上转换,那么序列化在 Java 中如何工作?

java - 部署在同一 tomcat 服务器上的两个 Web 应用程序之间的跨上下文通信

java - EJB 和 WatchService

Java:如何仅使用纯Java.Security而不使用BouncyCaSTLe来生成私钥形式的KeyPair?

windows - Linux 与 Windows 中的文件权限

c - null 终止字符串数组

java - 如何使用 Tomcat 隧道 RMI

java - 如何从另一个文件加载maven依赖项?