Введение
Java Management Extensions (JMX) – это технология Java, предоставляющая инструменты для управления и мониторинга приложений, системных объектов, устройств (например, принтеров) и сервисно-ориентированных сетей. Эти ресурсы представлены объектами, называемыми MBeans (от Managed Bean). В API классы могут динамически загружаться и создаваться экземпляры. Приложения для управления и мониторинга могут быть спроектированы и разработаны с использованием Java Dynamic Management Kit. 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. JMX был принят сообществом J2EE на ранних этапах и стал частью J2SE, начиная с версии 5.0. "JMX" является торговой маркой корпорации Oracle.
Java Management Extensions (JMX) is a Java technology that supplies tools for managing and monitoring applications, system objects, devices (such as printers) and service oriented networks. Those resources are represented by objects called MBeans (for Managed Bean). In the API, classes can be dynamically loaded and instantiated. Managing and monitoring applications can be designed and developed using the Java Dynamic Management Kit. JSR 003 of the Java Community Process defined JMX 1.0, 1.1 and 1.2. JMX 2.0 was being developed under JSR 255, but this JSR was subsequently withdrawn. The JMX Remote API 1.0 for remote management and monitoring is specified by JSR 160. An extension of the JMX Remote API for Web Services was being developed under JSR 262. Adopted early on by the J2EE community, JMX has been a part of J2SE since version 5.0. "JMX" is a trademark of Oracle Corporation.
Бобы, обработанные
Управляемый компонент (bean), иногда просто называемый MBean, является типом JavaBean, созданным с использованием внедрения зависимостей. Управляемые компоненты особенно часто используются в технологии Java Management Extensions, но в Java EE 6 спецификация предоставляет более четкое определение управляемого компонента. MBean представляет собой ресурс, работающий в виртуальной машине Java, такой как приложение или техническая служба Java EE (транзакционный монитор, драйвер JDBC и т.д.). Они могут использоваться для сбора статистики по вопросам, таким как производительность, использование ресурсов или проблемы (pull); для получения и установки конфигураций или свойств приложения (push/pull); и для уведомления о событиях, таких как ошибки или изменения состояния (push). Java EE 6 определяет управляемый компонент как компонент, реализованный классом Java, который называется его классом компонента. Класс Java верхнего уровня является управляемым компонентом, если он определен как таковой в любой другой спецификации технологии Java EE (например, в спецификации технологии JavaServer Faces), или если он соответствует всем следующим условиям:
Он не является нестатическим внутренним классом. Это конкретный класс или класс, аннотированный @Decorator. Он не аннотирован аннотацией, определяющей компонент EJB, или не объявлен как класс компонента EJB в файле ejb-jar.xml. Для определения управляемого компонента не требуется специального объявления, например, аннотации. MBean может уведомлять MBeanServer о своих внутренних изменениях (для атрибутов), реализуя интерфейс javax.management.NotificationEmitter. Приложение, заинтересованное в изменениях MBean, регистрирует слушателя (javax.management.NotificationListener) в MBeanServer. Следует отметить, что JMX не гарантирует доставку всех уведомлений слушателям.
It is not a non static inner class. It is a concrete class, or is annotated @Decorator. It is not annotated with an EJB component defining annotation or declared as an EJB bean class in ejb jar. xml. No special declaration, such as an annotation, is required to define a managed bean. A MBean can notify the MBeanServer of its internal changes (for the attributes) by implementing the javax. management. NotificationEmitter. The application interested in the MBean's changes registers a listener (javax. management. NotificationListener) to the MBeanServer. Note that JMX does not guarantee that the listeners will receive all notifications.