Динамическое распределение портов JMX - PullRequest
4 голосов
/ 18 августа 2011

У меня 16 процессов Java с одним и тем же основным методом и аргументами, работающими на одной машине.Я хочу контролировать это удаленно через JConsole.

Номера портов жесткого кодирования, такие как -Dcom.sun.management.jmxremote.port=5000, не будут работать, поскольку эти процессы используют одинаковую конфигурацию и не могут работать с одним и тем же портом.

Может ли JVM динамически выбирать разные порты для каждого из 16 процессов?

Ответы [ 2 ]

1 голос
/ 18 августа 2011

Используя RMI Connector, вы можете указать URL своего агента.

Если вам это нужно, вы можете создать реестр RMI программно, используя:

java.rmi.registry.LocateRegistry.createRegistry(port);

Может оказаться полезным следующий несвязанный пример: Подключение через брандмауэр с использованием JMX

0 голосов
/ 18 августа 2011

Я не думаю oracle jvm поддерживает что-то подобное. единственное, что может работать, - это использовать порт «0», что позволяет «динамически» выбирать порт в некоторых вещах, связанных с rmi.

...