JMX und MBeans mit Spring Framework

WebSphere Application Server Version 6.1 und höher unterstützt Spring-JMX-MBeans (Java™ Management Extensions).

JMX und MBeans

Wenn Sie die Unterstützung für Spring-JMX-MBeans verwenden möchten, müssen Sie die JMX-MBeans bei der MBeanServer-Instanz des Containermanagers im Anwendungsserver registrieren. Wenn Sie keine Servereigenschaft für die MBean angeben, versucht das MBeanExporter-Objekt, eine aktive MBeanServer-Instanz zu erkennen. Für Anwendungen, die im Anwendungsserver ausgeführt werden, würde Spring Framework somit die MBeanServer-Instanz des Containers finden.

Verwenden Sie die Klasse "MBeanServerFactory" nicht, um eine MBeanServer-Instanz zu instanzieren und diese Instanz anschließend in das MBeanExporter-Objekt zu injizieren. Verwenden Sie auch nicht die Spring-Framework-Klassen "ConnectorServerFactoryBean" und "JMXConnectorServer", um die lokale MBeanServer-Instanz durch Öffnen eingehender JMX-Ports für Clients bereitzustellen.

Spring-MBeans im Anwendungsserver registrieren

Wenn eine MBean im Anwendungsserver registriert wird, wird sie mit einem vollständig qualifizierten Objektnamen (javax.management.ObjectName") identifiziert. Beispiel:
WebSphere:cell=99T73GDNode01Cell,name=JmxTestBean,node=99T73GDNode01,process=server1,type=JmxTestBeanImpl 
Wenn die Registrierung einer MBean zurückgenommen wird, muss sie über denselben vollständig qualifizierten Namen und nicht nur über die Eigenschaft "name" der MBean gesucht werden. Die beste Verwaltungsmethode ist die Implementierung der Schnittstelle "org.springframework.jmx.export.naming.ObjectNamingStrategy". Die Schnittstelle "ObjectNamingStrategy" kapselt die Erstellung von ObjectName-Objektnamen und wird von der Klasse "MBeanExporter" verwendet, um ObjectName-Objekte bei der Registrierung von Beans abzurufen. Sie können die ObjectNamingStrategy-Instanz der Bean, die Sie registrieren, hinzufügen, sodass die Registrierung der MBean ordnungsgemäß zurückgenommen wird, wenn die Anwendung deinstalliert wird. Beispiel:
<bean id="exporter" class="org.springframework.jmx.export.MBeanExporter"
  lazy-init="false">
  <property name="beans">
    <map> <entry key="JmxTestBean" value-ref="testBean" /> </map>
  </property>
  <property name="namingStrategy" ref="websphereNamingStrategy" />
...
</bean>

MBeans und Benachrichtigungen

Wenn Sie Benachrichtigungen verwenden möchten, empfiehlt es sich, den Objektnamen für eine MBean vollständig zu definieren, weil die MBean mit einem vollständig qualifizierten Objektnamen identifiziert wird, wenn sie bei WebSphere Application Server registriert wird. Beispiel:
<bean id="exporter" class="org.springframework.jmx.export.MBeanExporter" 
  lazy-init="false">
  <property name="beans">
    <map>
      <entry key="JmxTestBean" value-ref="testBean" />
    </map>
  </property>
  <property name="namingStrategy" ref="websphereNamingStrategy" />
  <property name="notificationListenerMappings">
    <map>
      <entry key="WebSphere:cell=99T73GDNode01Cell, name=JmxTestBean,
						node=99T73GDNode01, process=server1, type=JmxTestBeanImpl">
        <bean class="client.MBeanListener" />
      </entry>
    </map>
  </property>
</bean>
[z/OS]

Spring-JMX- und -Multicall-Methoden unter z/OS

WebSphere Application Server Version 6.1 und höher unterstützt Spring-JMX in Servern mit mehreren Servant-Regionen. Die Implementierungsoptionen sind jedoch begrenzt, weil Sie Spring Framework nicht verwenden können, um plattformspezifische Felder im MBean-Deskriptor anzugeben. Der Anwendungsserver verwendet standardmäßig die sogenannte Unicall-Strategie, sodass jeweils nur eine einzige Instanz der MBean in einer einzelnen unbestimmten Servant-Region zur Ausführung einer Anforderung aufgefordert wird. Für einige Szenarien ist dieses Verhalten angebracht, aber es gibt mehr Fälle, in denen eine Anwendung eine Kombination von Multicall- und Unicall-Methoden deklarieren und eine gewisse Aggregationslogik einschließen muss.


Symbol, das den Typ des Artikels anzeigt. Konzeptartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cspr_data_access_tran2
Dateiname:cspr_data_access_tran2.html