Встраиваемый JMX-клиент

В моем веб-приложении я хочу позволить некоторым конечным пользователям управлять специальными параметрами. Я хочу использовать JMX для этого. Хотя мое приложение работает на JBoss, я не хочу, чтобы конечные пользователи управляли специальными параметрами с помощью консоли JMX. Это не достаточно удобно для пользователя, и они уже представлены слишком многими mbeans.

Я сталкивался с JMinix или Jolokia, но если они универсальны и подходят для просмотра / управления MBean-компонентами JMX, они не удобны для пользователя.

Итак, знаете ли вы компонент, библиотеку или инфраструктуру, которые будут иметь следующие функции?

  • Представьте MBeans в удобной для пользователя форме (т.е. не как консоль JMX в JBoss)
  • Позвольте вам автоматически фильтровать некоторые MBeans
  • Встраиваемый в существующее веб-приложение

Java 6
JSF 2

1 ответ

Решение

Разоблачение и доступ к MBeans - это две совершенно разные проблемы. После того, как вы правильно представили MBean-компоненты, пользователи смогут получить к ним доступ с другого компьютера, используя тот клиент, который им подходит. Этот клиент обычно не зависит от конкретной реализации сервера.

Подробная информация о том, как предоставить ваши MBeans для удаленного доступа, описана здесь: http://docs.oracle.com/javase/tutorial/jmx/remote/jconsole.html

Что касается того, какой клиент является наиболее удобным для пользователя, я, как правило, нашел, что JConsole очень прост в использовании. После удаленного подключения к коннектору JMX вашего приложения пользователю не нужно управлять какими-либо другими специальными параметрами, кроме аргументов, передаваемых вашим методам MBean. Если вашим пользователям нужен пользовательский интерфейс, вы можете подумать о создании своего собственного, следуя приведенным здесь документам: http://docs.oracle.com/javase/tutorial/jmx/remote/custom.html

Вы также можете найти документацию Oracle по теме " Мониторинг и управление с использованием технологии JMX".

Редактировать:
Перечитывая ваш вопрос - было бы полезно узнать, разрабатываете ли вы приложение, в котором есть открытые MBean-компоненты, и приложение, которое их потребляет. Если у вас есть MBeans, вы можете помочь пользователям, пытаясь разделить операции, которые принимают много параметров. Также подумайте, как вы группируете свои операции и является ли ваше соглашение об именах удобным для пользователя. Я думаю, что большинство доступных клиентов представят вам те же проблемы, если у вас есть большое количество MBean-компонентов в одной JVM.

Другие вопросы по тегам