www.wikidata.de-de.nina.az
Der Application Response Measurement ARM ist ein Standard der Open Group und dient zur Performancemessung von Transaktionen aus der Sicht des Benutzers Technisch ist ARM eine Programmierschnittstelle die fur spatere Auswertungen in das Programm eingebaut werden muss ARM ist verfugbar fur die Programmiersprachen C und Java Inhaltsverzeichnis 1 Geschichte 2 Einfuhrung 3 Vorgehensweise 4 Konzepte 5 ARM instrumentierte Anwendungen 6 Weblinks 7 EinzelnachweiseGeschichte BearbeitenDer Application Response Measurement ARM wurde ursprunglich von Tivoli und Hewlett Packard entwickelt und in der Version 1 0 im Jahre 1996 veroffentlicht Dieser Standard spezifiziert eine Programmierschnittstelle zur Performancemessung fur die Programmiersprache C 1997 wurde der ARM 2 0 Standard unter dem Dach der Computer Measurement Group CMG von der ARM Working Group entwickelt und erlaubte die Korrelation von Eltern Kind Transaktionen in einem verteilten Computersystem ARM 3 0 wurde 2001 von der Open Group als Standard angenommen Dieser Standard spezifiziert eine Programmierschnittstelle fur die Programmiersprache Java Im Herbst 2003 wurde die Version 4 0 des ARM Standards von der Open Group angenommen Diese Version bietet nun eine Programmierschnittstelle sowohl fur die Programmiersprache C als auch fur Java Im Dezember 2004 wurde die Version 4 0 in einer zweiten Auflage uberarbeitet ARM 4 1 erschien im Sommer 2007 Einfuhrung BearbeitenModerne Anwendungen werden immer komplexer und oft auch uber mehrere Rechner in einem Netzwerk verteilt Hieraus ergeben sich neue Herausforderungen fur Werkzeuge zur Beobachtung und Analyse dieser verteilten Anwendungen Fur diese Aufgabe wurde der ARM Standard entworfen Um einen genaueren Einblick in das Verhalten einer verteilten Anwendung zu bekommen konnen folgende Fragen gestellt werden Werden Geschaftstransaktionen ausgefuhrt und wenn nicht was sind die Grunde dafur Wie gross ist die Antwortzeit einer Transaktion Wo ist die Schwachstelle welche Unter Transaktionen konnen die Schwierigkeiten auslosen Welche und wie viele Transaktionen werden in einer Anwendung ausgefuhrt Wie kann die Performance einer Anwendung verbessert werden ARM kann die Beantwortung dieser Fragen erleichtern indem die Performance von definierten Transaktionen gemessen und die Verfugbarkeit von Anwendungen uberpruft wird Es konnen sowohl sogenannte Geschaftstransaktionen als auch technische Transaktionen also solche die einen technischen Sachverhalt naher analysieren gemessen werden Vorgehensweise BearbeitenDie grundsatzliche Vorgehensweise um Anwendungen mit ARM zu instrumentieren und Performancedaten zu gewinnen ist wie folgt Ermitteln und Definieren sowohl der Geschaftstransaktionen als auch technischer Transaktionen Instrumentierung der Anwendung mit Aufrufen zur ARM Programmierschnittstelle Start der instrumentierten Anwendung in ihrer gewohnten Laufzeitumgebung und Aufruf der fraglichen Transaktionen Die benutzte ARM Implementierung stellt nun Messdaten zur Verfugung die betrachtet weiter verarbeitet oder statistisch analysiert werden konnen Konzepte BearbeitenARM stellt verschiedene Konzepte zur Modellierung einer Anwendung und deren Performancemessung zur Verfugung Die im nachfolgenden dargestellten Konzepte der ARM Applikation und der ARM Transaktion unterscheiden zwischen Definitionen und Instanzen Eine Definition beschreibt die Eigenschaften eines Konzepts wohingegen eine Instanz die eigentliche Messung beschreibt ARM Applikation Application In verteilten Systemen klassisch Client Server Anwendungen operieren viele verschiedene Anwendungen zusammen Erst dieses Zusammenspiel beschreibt das komplette verteilte System Zur Identifizierung einzelner Anwendungen im ARM Kontext wird das Konzept einer Applikation in ARM etabliert Wird ein und dieselbe Anwendung mehrfach gestartet so wird es mehrere ARM Applikationsinstanzen geben jedoch nur eine Applikationsdefinition ARM Transaktion Transaction Eine Transaktion stellt das Hauptkonzept des ARM Standards dar und beschreibt genau eine Performance Messung Eine Transaktionsdefinition legt dabei die Randbedingungen fest z B welche Daten werden aufgezeichnet an welcher Stelle der Applikation wird die Transaktion gestartet und gestoppt usw Wird ein und dieselbe Transaktion mehrfach durchgefuhrt resultieren daraus viele Transaktionsinstanzen es gibt aber nach wie vor nur eine Transaktionsdefinition Eine Transaktion besteht im Wesentlichen aus einem Status Gut Fehlerhaft Abgebrochen einem Start bzw Stopzeitpunkt der daraus resultierenden Dauer und der Beschreibung des Rechners SystemAddress auf dem die Transaktion aufgezeichnet wurde Zusatzlich konnen weitere Informationen wie spezielle Metriken Metrics oder Zeichenketten Properties an eine Transaktion gebunden werden ARM System Adresse SystemAddress Beschreibt eindeutig einen Rechner z B durch seinen Namen seine IP Adresse oder sonstige eindeutige Beschreibungen ARM Korrelatoren Correlators Ein Korrelator beschreibt im ARM Kontext genau eine Transaktionsinstanz als eine Folge von Bytes Mit Hilfe eines solchen Korrelators konnen Eltern Kind Beziehungen zwischen Transaktionsinstanzen hergestellt werden Somit ist es moglich eine komplexe Transaktion in ihre einzelnen Bestandteile zu zerlegen Beispiel Zeige mir den ARM Wikipedia Artikel in meinem Web Browser an Hierfur konnten beliebig viele sogenannte Sub Transaktionen Kinder gemessen werden wie Zugriff auf den Web Server Datenbankzugriff oder dass Zeichnen der Seite im eigenen Browser ARM Metriken Metrics Metriken im ARM Sinne sind zusatzliche Daten Zahler Fullstand IDs die einer Transaktion zugeordnet werden konnen Zum Beispiel kann die Anzahl gedruckter Seiten eines Druckauftrags und dessen Dauer eine genauere Beurteilung uber die Performance eines Drucksystems geben als die reine gemessene Zeit fur dessen Durchfuhrung ARM Eigenschaften Properties Sogenannte Properties erlauben einer Transaktion beliebige Daten anzuhangen Properties bestehen aus zwei Zeichenketten einem Namen und einem Wert Diese Zeichenketten konnen mit spezieller Semantik fur jede Transaktionsdefinition versehen werden ARM Benutzer User Eine Transaktionsinstanz kann genau einem Benutzer zugeordnet werden Hierbei ist zu beachten dass der Benutzer keineswegs der Benutzer sein muss der sich gerade am Rechner befindet und sich dort angemeldet hat ARM instrumentierte Anwendungen BearbeitenFolgende Anwendungen sind bereits mit ARM instrumentiert Apache HTTP Server mittels des ARM 4 0 Moduls mod arm4 1 2 Alle HTTP Anfragen werden mittels ARM gemessen IBM WebSphere Applikationsserver 3 Verschiedene Anfragen wie URI JSP und andere konnen direkt mit ARM gemessen werden IBM HTTP Server 4 IBM DB2 Datenbank Server 5 Das Software System von SAS Institute unterstutzt ARM 2 0 schon langer mit der Version 9 2 wird nun auch ARM 4 0 unterstutzt 6 Baan 5 und Infor ERP Ln 6 1Weblinks BearbeitenOffizielle ARM Web Seite und Open Source SDK Open Source ARM4 Java Implementierung Kommerzielle ARM 4 0 Implementierung fur C C Java CSharp NET und Python mit einer kostenlosen Community EditionEinzelnachweise Bearbeiten Apache ARM 4 0 Modul Fur produktiven Einsatz modifiziertes Apache ARM 4 0 Modul WAS v6 1 ARM Transaktionen Enabling ARM on HTTP Server Enabling ARM on DB2 Universal Database http support sas com documentation cdl en armref 61526 HTML default a003282868 htm Abgerufen von https de wikipedia org w index php title Application Response Measurement amp oldid 226751686