我目前正在使用 com.sun.management.jmxremote.* 属性启动Java VM,以便可以通过JConsole连接到Java VM 进行管理和监视。不幸的是,它监听计算机上的所有接口(IP地址)。
com.sun.management.jmxremote.*
在我们的环境中,通常情况下,一台机器上同时运行多个Java VM。尽管可以告诉JMX侦听不同的TCP端口(使用com.sun.management.jmxremote.port),但是最好让JMX使用标准的JMX端口并仅绑定到特定的IP地址(而不是所有IP地址)。
com.sun.management.jmxremote.port
这将使查找通过JConsole连接到哪个VM变得更加容易(因为每个VM有效地“拥有”自己的IP地址)。有谁知道如何使JMX在单个IP地址或主机名上侦听?
如果还有其他人对此感到不安,那么……十年之后,他们终于解决了它!
由于Java 8u102 -Dcom.sun.management.jmxremote.host绑定到所选IP
-Dcom.sun.management.jmxremote.host
参见:https : //bugs.openjdk.java.net/browse/JDK-6425769