2013-07-12 2 views
1

Мне любопытно, как JConsole и JMX работают вместе. В частности, я прочитал это JConsole Guide который упоминает, чтоJava JMX Server

jconsole uses a JMXConnector client to connect to the JMXConnectorServer in 
the target application. If the application isn't started with the JMX agent 
then there isn't a JMXConnectorServer and jconsole doesn't have anything to 
connect too. In that case it uses a HotSpotTM VM specific mechanism to start 
the JMX agent in the target VM. Once the agent is started then jconsole connects 
as normal. 

Когда я начинаю JConsole он просто необходим порт и имя хоста для информации JMX, так что мне интересно, если его можно получить доступ к MBeans через любое произвольное соединение TCP (и, следовательно, любой язык программирования), или если есть что-то особенное, что также делает jconsole?

Я знаю, как получить доступ к фабрике MBean, хотя java, но мне любопытно, могу ли я получить доступ к этим элементам через произвольный язык через TCP или другой простой механизм. Также см. link discussing rest connector.

ответ

1

По умолчанию сервер JMX обеспечивает соединение через RMI. Это затруднит доступ к серверу с помощью произвольного языка.

Однако сервер JMX не ограничен RMI в качестве протокола связи. Архитектура расширяема и практически любой транспортный протокол может быть использован - но его нужно будет писать практически с нуля.

Посмотрите на Jolokia - они делают довольно удивительные вещи, чтобы вы могли разговаривать с серверами MBean через кучу протоколов (один из них - REST), среди прочего.

Смежные вопросы