PMI-Module

Sie können die Leistung Ihrer Anwendungen mit den PMI-Modulen (Performance Monitoring Infrastructure) überwachen.

objectGridModule

Das Modul "objectGridModule" enthält eine Zeitstatistik: Antwortzeit der Transaktion. Eine Transaktion ist wie folgt definiert: Dauer zwischen dem Aufruf der Methode "Session.begin" und dem Aufruf der Methode "Session.commit". Diese Dauer wird als Antwortzeit der Transaktion verfolgt. Das Stammelement ("root") des Moduls "the objectGridModule" dient als Einstiegspunkt für die Statistiken von WebSphere eXtreme Scale. Dieses Stammelement hat ObjectGrids als untergeordnete Elemente, die dieselben Transaktionstypen wie deren untergeordnete Elemente haben. Die Antwortzeitstatistik wird jedem Transaktionstyp zugeordnet.
Abbildung 1. Struktur des Moduls "ObjectGridModule"
Struktur des Moduls "ObjectGridModule"
Die folgende Abbildung zeigt eine ObjectGridModule-Beispielstruktur. In diesem Beispiel sind zwei ObjectGrid-Instanzen im System vorhanden: ObjectGrid A und ObjectGrid B. Die ObjectGrid-Instanz A hat zwei Typen von Transaktionen: A und Standard. Die ObjectGrid-Instanz B hat nur den Transaktionstyp "Standard".
Abbildung 2. Beispielstruktur für das Modul "ObjectGridModule"
Beispielstruktur für das Modul 'ObjectGridModule'
Transaktionstypen werden von Anwendungsentwicklern definiert, weil sie wissen, welche Typen von Transaktionen in ihren Anwendungen verwendet werden. Der Transaktionstyp wird mit der folgenden Methode "Session.setTransactionType(String)" gesetzt:
/**
* Legt den Transaktionstyp für künftige Transaktionen fest.
*
* Nach dem Aufruf dieser Methode haben alle künftigen Transaktionen denselben
* Typ, bis ein anderer Transaktionstyp festgelegt wird. Wenn Sie keinen
* Transaktionstyp festlegen, wird der Standardtransaktionstyp TRANSACTION_TYPE_DEFAULT
* verwendet.
*
* Transaktionstypen werden hauptsächlich für die Verfolgung statistischer Daten
* verwendet. Benutzer können Typen von Transaktionen, die in einer Anwendung
* ausgeführt werden, vordefinieren. Die Idee ist, Transaktionen mit denselben
* Merkmalen in einer Kategorie (Typ) zusammenzufassen, so dass jeweils eine
* einzige Statistik zur Transaktionsantwortzeit verwendet werden kann, um den
* jeweiligen Transaktionstyp zu verfolgen.
*
* Diese Verfolgung ist hilfreich, wenn Ihre Anwendung unterschiedliche
* Transaktionstypen hat.
* Einige Typen von Transaktionen, wie z. B. Aktualisierungstransaktionen,
* haben eine längere Verarbeitungszeit als andere Transaktionen, wie z. B.
* Lesetransaktionen. Wenn Sie den Transaktionstyp verwenden, können
* unterschiedliche Transaktionen über unterschiedliche Statistiken verfolgt
* werden, so dass die Statistiken hilfreicher sind.
*
* @param tranType Der Transaktionstyp für künftige Transaktionen.
*/
void setTransactionType(String tranType);
Im folgenden Beispiel wird der Transaktionstyp auf updatePrice gesetzt:
// Transaktionstyp auf "updatePrice" setzen.
// Die Zeit zwischen session.begin() und session.commit() wird in der
// Zeitstatistik für "updatePrice" verfolgt.
session.setTransactionType("updatePrice");
session.begin();
map.update(stockId, new Integer(100));
session.commit();
Die erste Zeile gibt an, dass der folgende Transaktionstyp "updatePrice" ist. In dem Beispiel ist eine Statistik "updatePrice" in der ObjectGrid-Instanz vorhanden, die dem Session-Objekt entspricht. Mit JMX-Schnittstellen (Java Management Extensions) können Sie die Transaktionsantwortzeit für Transaktionen des Typs "updatePrice" abrufen. Sie können auch die zusammengefasste Statistik für alle Transaktionstypen in der angegebenen ObjectGrid-Instanz abrufen.

mapModule

Das Modul "mapModule" enthält drei Statistiken, die sich auf eXtreme-Scale-Maps beziehen: Das Stammelement ("root") des Moduls "mapModule" dient als Einstiegspunkt für die ObjectGrid-Map-Statistiken. Dieses Stammelement hat Maps als untergeordnete Elemente, die dieselben Transaktionstypen wie deren untergeordnete Elemente haben. Jede Map-Instanz hat die drei aufgelisteten Statistiken. Die Struktur des Moduls "mapModule" ist in der folgenden Abbildung dargestellt:
Abbildung 3. Struktur des Moduls "mapModule"
Struktur des Moduls mapModule
Die folgende Abbildung zeigt eine Beispielstruktur für das Modul "mapModule":
Abbildung 4. Beispielstruktur für das Modul "mapModule"
Beispielstruktur für das Modul 'mapModule'

Modul "hashIndexModule"

Das Modul "hashIndexModule" enthält die folgenden Statistiken, die sich auf Indizes auf Map-Ebene beziehen: Das Stammelement ("root") des Moduls "hashIndexModule" "root" dient als Einstiegspunkt für die HashIndex-Statistik. Das Stammelement hat ObjectGrids als untergeordnete Elemente, ObjectGrids haben Maps als untergeordnete Elemente, die wiederum HashIndex-Instanzen als untergeordnete Elemente und Blattknoten der Baumstruktur haben. Jede HashIndex-Instanz hat die drei aufgelisteten Statistiken. Die Struktur des Moduls "hashIndexModule" wird in der folgenden Abbildung gezeigt:
Abbildung 5. Struktur des Moduls "hashIndexModule"
Struktur des Moduls 'hashIndexModule'
Die folgende Abbildung zeigt eine Beispielstruktur für das Modul "hashIndexModule":
Abbildung 6. Beispielstruktur für das Modul "hashIndexModule"
Beispielstruktur für das Modul 'hashIndexModule'

Modul "agentManagerModule"

Das Modul "agentManagerModule" enthält Statistiken, die sich auf die Agenten auf Map-Ebene beziehen: Das Stammelement ("root" des Moduls "agentManagerModule") dient als Einstiegspunkt für die AgentManager-Statistiken. Dieses Stammelement hat ObjectGrids als untergeordnete Elemente, die ObjectGrids haben Maps als untergeordnete Elemente, die wiederum AgentManager-Instanzen als untergeordnete Elemente und Blattknoten der Baumstruktur haben. Jede AgentManager-Instanz hat Statistiken.
Abbildung 7. Struktur des Moduls "agentManagerModule"
Root, objectgrid_name, map_name, agent_class_name
Abbildung 8. Beispielstruktur für das Modul "agentManagerModule"

Modul "queryModule"

Das Modul "queryModule" enthält Statistiken, die sich auf eXtreme-Scale-Abfragen beziehen: Das Stammelement ("root") des Moduls "queryModule" dient als Einstiegspunkt für die Abfragestatistiken. Dieses Stammelement hat ObjectGrids als untergeordnete Elemente, die Query-Objekt als untergeordnete Elemente und Blattknoten der Baumstruktur haben. Jede Query-Instanz hat die drei aufgelisteten Statistiken.
Abbildung 9. Struktur des Moduls "queryModule"
Struktur des Moduls "queryModule"
Abbildung 10. Beispielstruktur für das Modul "queryModule"
Beispielstruktur für das Modul 'queryModule'