SAP Basis Rezertifizierung leicht gemacht mit EasyReCert - SAP Corner

Direkt zum Seiteninhalt
Rezertifizierung leicht gemacht mit EasyReCert
Unser Beratungsportfolio
Neben der Auswertung der Antwortzeiten sollten Sie die folgende Analyse durchführen, die man als die »Suche nach der verlorenen Zeit« bezeichnen könnte. Wie oben bereits erwähnt, gibt es zwei unterschiedliche Quellen der Zeitmessung. Alle Zeiten, außer der CPU-Zeit, werden vom SAP-Workprozess gemessen, und nur die CPU-Zeit wird vom Betriebssystem ermittelt. Die folgende Analyse ist ein Plausibilitätscheck zur Überprüfung, ob die beiden Zeitmessungen miteinander vereinbar sind. Dazu subtrahiert man von der gesamten mittleren Antwortzeit alle Zeiten, in denen der SAP-Workprozess keine CPU-Zeit benötigt, nämlich die Dispatcher-Wartezeit, die Datenbankzeit, die Enqueue-Zeit und die Roll-Wartezeit. Während der Processing-Zeit werden im Wesentlichen Programme bearbeitet, und daher sollte in dieser Zeit CPU-Kapazität »verbraucht« werden. Daher sollten Processing-Zeit und CPU-Zeit in der gleichen Größenordnung liegen. Als Richtwert für die Praxis sollte die Differenz aus Processing- Zeit und CPU-Zeit nicht größer als 10 % sein. Größere »Fehlzeiten« deuten auf Performanceprobleme hin.

Im weiteren Verlauf des Projekts holen Sie ein oder mehrere Angebote von Hardwarepartnern ein. Die Hardwarepartner erstellen das Hardware-Sizing, da nur sie die Leistungsfähigkeit ihrer Hardware bewerten können. Sofern nötig, greifen die Hardwarepartner über ihre SAP Competence Center auf die entsprechenden Sizing-Experten der SAP zurück. Um den Sizing-Prozess zu vereinfachen, hat SAP folgendes Standardverfahren definiert: Legen Sie zu Ihrem Einführungsprojekt ein Sizing-Projekt im Quick Sizer im SAP Support Portal an. Dort legen Sie die für das Sizing notwendigen Daten ab. Unterstützt der Quick Sizer das Sizing für die ausgewählten Prozesse nicht, verwenden Sie die entsprechenden Sizing-Guidelines. Anschließend gewähren Sie den Hardwarepartnern, von denen Sie ein Sizing-Angebot wünschen, Zugriff auf dieses Sizing-Projekt im SAP Support Portal, indem Sie ihnen das Kennwort für das entsprechende Projekt mitteilen. Die Links zu den jeweiligen Internetseiten der Hardwarepartner finden Sie ebenfalls im Quick Sizer. Die Hardwarepartner erstellen nun aufgrund der von Ihnen hinterlegten Daten ein konkretes Hardwareangebot.
OLE Beispiel: OLE Verarbeitung
Um eine optimale Performance zu erreichen, sollte das Kopieren der Daten beim Kontextwechsel auf ein Minimum beschränkt bleiben, mit anderen Worten, es soll möglichst wenig SAP Roll Memory benutzt werden. Daher wird für alle Betriebssysteme empfohlen, ztta/roll_first = 1 zu setzen. Was passiert nun, wenn der SAP Extended Memory voll belegt ist? In diesem Fall sind zwei Szenarien möglich, die beide nicht performanceoptimal sind: Da der SAP Extended Memory voll belegt ist, werden Benutzerkontexte bis zu einer Größe von ztta/roll_area im lokalen Roll-Bereich abgelegt. Bei jedem Kontextwechsel müssen damit unter Umständen mehrmals Daten in der Größe von mehreren Megabyte kopiert (gerollt) werden; dies führt typischerweise zu Wartesituationen in der Roll-Verwaltung, insbesondere wenn der Roll-Puffer voll ist und Daten in die Roll-Datei geschrieben werden müssen. Erfahrungen zeigen, dass bei großen Applikationsservern mit mehr als 100 Benutzern die Performance in diesen Fällen schlagartig und drastisch einbricht. Um in dieser Situation Abhilfe zu schaffen, kann man den lokalen RollBereich (ztta/roll_area) reduzieren. Wenn der SAP Extended Memory voll belegt ist, wird nur noch wenig Roll Memory verwendet, und die Menge der beim Kontextwechsel zu kopierenden Daten reduziert sich. Stattdessen werden die Kontextdaten im SAP Heap Memory abgelegt – dies hat zur Folge, dass die Workprozesse gar nicht mehr rollen, sondern in den PRIV-Modus gehen, d. h. einem Benutzer zwischen den Transaktionsschritten exklusiv zugeordnet bleiben. Befinden sich zu viele Workprozesse gleichzeitig im PRIV-Modus, stehen dem Dispatcher nicht genügend freie Workprozesse zur Verfügung. Es kann daher zu hohen Dispatcher-Wartezeiten und damit ebenfalls zum Einbruch der Performance kommen.

Eine Performanceanalyse mit dem Debugger nehmen Sie wie folgt vor: Starten Sie das zu untersuchende Programm in einem zweiten Modus in der Workprozess-Übersicht (Transaktion SM50). Aus der WorkprozessÜbersicht gelangen Sie mit der Funktion Debugging in den Debugger. Indem Sie mehrfach hintereinander in den Debugger springen, können Sie die Coding-Stellen im Programm mit hohem CPU-Bedarf identifizieren. Oft sind dies LOOP ... ENDLOOP-Schleifen über große interne Tabellen. Den aktuellen Hauptspeicherbedarf erhalten Sie (im »klassischen« Debugger) mit der Funktion Springen > Weitere Bilder > Speicherverbrauch. Prüfen Sie, ob ein Programmfehler oder eine Fehlbedienung des Programms vorliegt, sodass übermäßig viel Speicher angefordert wird. Als Richtwert mag Ihnen dienen, dass ein Programm, das im Dialogbetrieb von mehreren Benutzern ausgeführt wird, nicht mehr als 100MB allokieren sollte. Zur Erstellung einer Liste der im Speicher gehaltenen Objekte des Programms navigieren Sie im »klassischen« Debugger ab SAP NetWeaver AS ABAP 6.20 mit Springen > Zustandsanzeigen > Speicherverbrauch. Auf der Registerkarte Speicherverbrauch > Ranglisten finden Sie eine Liste von Objekten und deren Speicherverbrauch. In den Versionen AS ABAP 4.6 und 6.10 gelangen Sie zu einer Speicherverbrauchsliste über den Pfad Springen > System > Systembereiche. Geben Sie im Feld Bereich »ITAB-TOP25« ein. Sie erhalten so eine Liste der 25 größten internen Tabellen. Im »neuen« Debugger blenden Sie zunächst das Speicheranalyse-Werkzeug ein, indem Sie auf die Schaltfläche für ein neues Werkzeug klicken und dann unter den angebotenen Werkzeugen im Ordner Speicherverwaltung die Speicheranalyse auswählen. Auf dem Eingangsbildschirm wird daraufhin angezeigt, wie viel Speicher vom analysierten internen Modus allokiert bzw. verwendet wird. Auf der Registerkarte Speicherobjekte finden Sie eine Liste der größten Speicherobjekte – das können interne Tabellen, Objekte, anonyme Datenobjekte oder Strings sein.

Etliche Aufgaben im Bereich der SAP Basis können mit "Shortcut for SAP Systems" wesentlich erleichtert werden.

In den folgenden Technologien haben wir viele wertvolle Erfahrungen gesammelt, die wir Ihnen gern zur Verfügung stellen.

Auf www.sap-corner.de finden Sie ebenfalls viele nützliche Informationen zum Thema SAP Basis.

Sie begleitet Wartungsarbeiten und greift bei besonderen Situationen, wie zum Beispiel schlechter Performance, ein.
SAP Corner
Zurück zum Seiteninhalt