Расширения управления Java

редактировать

Расширения управления Java (JMX ) - это технология Java, предоставляет инструменты для управления и мониторинга приложений, системных объектов, устройств (например, принтеров ) и сервис-ориентированных сетей. Эти ресурсы представлены объектами, называемыми MBeans (для Managed Bean). В API классы можно динамически загружать и создавать экземпляры. Приложения для управления и мониторинга можно разрабатывать и разрабатывать с использованием.

JSR 003 процесса Java Community Process определяет JMX 1.0, 1.1 и 1.2. JMX 2.0 разрабатывался под JSR 255, но впоследствии этот JSR был отозван. JMX Remote API 1.0 для удаленного управления и мониторинга указан в JSR 160. Расширение JMX Remote API для веб-служб разрабатывалось под JSR 262.

На раннем этапе было принято J2EE, JMX был частью J2SE, начиная с версии 5.0. «JMX» является товарным знаком Oracle Corporation.

Содержание

  • 1 Архитектура
  • 2 Управляемые компоненты
    • 2.1 Типы
  • 3 Поддержка
  • 4 См. Также
  • 5 Ссылки
  • 6 Дополнительная литература
    • 6.1 Статьи
    • 6.2 Книги
  • 7 Внешние ссылки

Архитектура

Архитектура JMX

JMX использует трехуровневую архитектуру:

  1. Уровень зонда, также называемый Уровень инструментария - содержит зонды (называемые MBeans) инструментами ресурсов
  2. Уровень агента или MBeanServer - ядро ​​JMX. Он действует как посредник между MBean и приложениями.
  3. Уровень удаленного управления позволяет удаленным приложениям получать доступ к MBeanServer через соединители и адаптеры. Коннектор обеспечивает полный удаленный доступ к API MBeanServer с использованием различных коммуникаций (RMI, IIOP, JMS, WS- * …), в то время как адаптер адаптирует API к другому протоколу (SNMP,…) или к веб-интерфейсу GUI (HTML / HTTP, WML / HTTP,…).

Приложения могут быть общими консолями (например, JConsole и MC4J ) или приложениями для домена (мониторинг). Внешние приложения могут взаимодействовать с MBean-компонентами посредством использования соединителей JMX и адаптеров протокола. Коннекторы служат для соединения агента с удаленным управляющим приложением с поддержкой JMX. Эта форма связи включает соединитель в JMX-агенте и клиент-соединитель в управляющем приложении.

Адаптеры протокола обеспечивают представление управления агентом JMX через заданный протокол. Управляющие приложения, которые подключаются к адаптеру протокола, обычно относятся к данному протоколу.

Управляемые компоненты

A управляемые компоненты - иногда называемые просто MBean - это тип JavaBean, созданный с помощью внедрения зависимостей. Управляемые компоненты особенно используются в технологии Java Management Extensions, но в Java EE 6 спецификация предоставляет более подробное значение управляемого компонента.

MBean представляет ресурс, работающий на виртуальной машине Java, такой как приложение или техническая служба Java EE (монитор транзакций, драйвер JDBC и т. Д.). Их можно использовать для сбора статистики по таким проблемам, как производительность, использование ресурсов или проблемы (вытягивание); для получения и настройки конфигурации или свойств приложения (push / pull); и уведомление о событиях, таких как сбои или изменения состояния (push).

Java EE 6 предусматривает, что управляемый компонент - это компонент, который реализуется классом Java, который называется его классом компонента. Java-класс верхнего уровня является управляемым компонентом, если он определен как управляемый компонент в любой другой спецификации технологии Java EE (например, в спецификации технологии JavaServer Faces ) или если он соответствует всем следующие условия:

  1. Это не нестатический внутренний класс.
  2. Это конкретный класс или аннотированный @Decorator.
  3. Он не аннотирован аннотацией, определяющей компонент EJB или объявлен как класс EJB-компонента в ejb-jar.xml.

Для определения управляемого bean-компонента не требуется специального объявления, такого как аннотация.

MBean может уведомить MBeanServer о своих внутренних изменениях (для атрибутов), реализовав javax.management.NotificationEmitter. Приложение, заинтересованное в изменениях MBean, регистрирует слушателя (javax.management.NotificationListener) на MBeanServer. Обратите внимание, что JMX не гарантирует, что слушатели получат все уведомления.

Типы

Есть два основных типа MBean:

  • Стандартные MBean реализуют бизнес-интерфейс, содержащий сеттеры и геттеры для атрибуты и операции (т. е. методы).
  • Динамические компоненты MBean реализуют интерфейс javax.management.DynamicMBean, который обеспечивает способ перечисления атрибутов и операций, а также получения и установки атрибута

Дополнительные типы: Open MBeans, Model MBeans и Monitor MBean. Открытые MBean-компоненты - это динамические MBean-компоненты, которые полагаются на основные типы данных. Они не требуют пояснений и более удобны для пользователя. Модельные MBean-компоненты - это динамические MBean-компоненты, которые можно настроить во время выполнения. Также предоставляется общий класс MBean для динамической настройки ресурсов во время выполнения программы.

MXBean (Platform MBean) - это особый тип MBean, который объединяет подсистемы виртуальной машины Java, такие как сборка мусора, JIT-компиляция, пулы памяти, многопоточность и т. Д.

MLet (апплет управления) - это служебный MBean-компонент для загрузки, создания и регистрации MBean-компонентов. в MBeanServer из описания XML. Формат дескриптора XML:

[arglist]

Поддержка

JMX поддерживается на разных уровнях разными поставщиками:

См. также

Ссылки

  1. ^JSR 003: Спецификация расширений управления JavaTM (JMXTM)
  2. ^JSR 255: Спецификация расширений управления JavaTM (JMXTM), версия 2.0
  3. ^JSR 160: Удаленный API расширений управления JavaTM (JMX)
  4. ^JSR 262: соединитель веб-служб для агентов расширений управления Java (JMX)
  5. ^Использование JConsole для мониторинга приложений
  6. ^«Проект MC4J создает программное обеспечение управления для серверов приложений J2EE и других приложений Java». Архивировано из оригинала 23 марта 2007 г. Проверено 27 августа 2006 г.
  7. ^Java Management Extensions (JMX) - Best Practices
  8. ^«MLet (Java 2 Platform SE 5.0)». Sun Microsystems. Проверено 22 июня 2008 г.
  9. ^UnboundID Corp. Архивировано 06 марта 2012 г. на Wayback Machine
  10. ^http://www.opennms.org/w/ Категория: JMX
  11. ^http://help.logicmonitor.com/using/datasource/creating-datasources/collectors/jmx-collector/
  12. ^Apache Tomcat 6.0: мониторинг и управление Tomcat (руководство по Tomcat)

Дополнительная литература

Статьи

Книги

  • Бенджамин Г. Саллинс, Марк Б. Уиппл: JMX в действии: вы также установите и запустите свое первое приложение JMX, Manning Publications Co. 2002, ISBN 1-930110-56-1
  • : Java Management Extensions, O'Reilly, ISBN 0-596-00245-9
  • Джефф Хэнсон : Подключение клиентов и серверов JMX: Общие сведения о расширениях управления Java, APress LP, ISBN 1-59059-101-1
  • Марк Флери,: JMX: Управление J2EE с помощью расширений управления Java, Sams Publishing, ISBN 0-672- 32288-9

Внешние ссылки

Последняя правка сделана 2021-05-24 03:57:15
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте