Приложение Access JMX, работающее за прокси-сервером HTTP - PullRequest
4 голосов
/ 01 июля 2011

У меня есть приложение Java с поддержкой JMX (Java 1.5), расположенное за прокси-сервером HTTP. Поэтому я не могу получить к нему доступ напрямую через JConsole.

Решение, которое я представляю, состояло бы в том, чтобы в моем приложении был встроенный JMX-клиент, который собирает статистику и данные конфигурации с JMX-сервера и периодически отправляет их на внешний сервер через HTTP через прокси-сервер. Мой внешний сервер отвечает любыми изменениями конфигурации, если это необходимо, и клиент JMX в VM передает эти изменения на сервер JMX, который применяет их к приложению.

Я полагаю, что это достаточно частый сценарий, чтобы уже предлагались решения. Есть ли какая-нибудь вспомогательная инфраструктура / библиотека для включения такого доступа по HTTP?

Ответы [ 2 ]

3 голосов
/ 01 июля 2011

Не уверен, что это то, что вам нужно, но есть очень хороший мост JMX-REST, который называется Jolokia .Если вы добавите его в свое приложение, вы сможете взаимодействовать с JMX через интерфейс REST, который будет доступен через HTTP-прокси, как и любой другой HTTP-трафик.Так что вы не только туннелируете JMX через HTTP, но вы также демонстрируете его в гораздо более хорошем формате (JSON over HTTP).

У него довольно хорошая документация , также смотрите мой витрина .

0 голосов
/ 02 июля 2011

Если ваш сервер размещен в Linux / Unix, вы можете настроить переадресацию портов на него (используя putty, ssh или другие инструменты). Затем запустите JConsole и укажите локальный хост и порт для передачи запросов на удаленный сервер. Переадресация порта SSH довольно проста в настройке, и вы найдете множество примеров в Интернете.

...