E-Book, Deutsch, 267 Seiten
Reihe: Xpert.press
Schmalenbach Performancemanagement für serviceorientierte Java-Anwendungen
2007
ISBN: 978-3-540-36632-4
Verlag: Springer Berlin Heidelberg
Format: PDF
Kopierschutz: 1 - PDF Watermark
Werkzeug- und Methodenunterstützung im Spannungsfeld von Entwicklung und Betrieb
E-Book, Deutsch, 267 Seiten
Reihe: Xpert.press
ISBN: 978-3-540-36632-4
Verlag: Springer Berlin Heidelberg
Format: PDF
Kopierschutz: 1 - PDF Watermark
Erstes deutschsprachiges Buch zum Thema: Entwicklung und Systemadministration verwenden unterschiedliche Methoden und Verfahren zur Performanceanalyse und -optimierung. Bricht die Performance tatsächlich ein, führt dies zu wenig zielführenden Schuldzuweisungen. Der Autor bietet hier die Lösung für javabasierte Architekturen. Er betrachtet die Mengengerüste (bekannte/prognostizierte) sowie die fachlichen Anforderungen an die Antwortzeiten. Daraus leitet er Vorgaben ab, die aufeinander abgestimmt und quantifizierbar sind - sowohl für die Entwicklung als auch den Betrieb. Plus: analytische Methoden, Software zur Verarbeitung von Performancedaten.
Autoren/Hrsg.
Weitere Infos & Material
1;Vorwort;7
1.1;Die Struktur des Buches;8
1.2;Danksagungen;10
2;Inhaltsverzeichnis;13
3;1 Einführung;18
3.1;1.2 Ein Performancemeeting;18
3.2;1.3 Das fachliche und technische Umfeld;21
3.3;1.4 Performanceaspekte;22
3.4;1.5 Neue Herausforderungen;25
3.5;1.6 Performance als interdisziplinäre Herausforderung;27
3.6;Literatur;28
4;2 Performance und Entwicklungsprozess;29
4.1;2.1 Motivation;29
4.2;2.2 Rollen und Aufgaben;30
4.2.1;2.2.1 Der Facharchitekt;30
4.2.2;2.2.2 Der IT-Architekt;31
4.2.3;2.2.3 Der Entwickler;32
4.2.4;2.2.4 Der Systemadministrator;33
4.3;2.3 Aufbau eines Performanceteams;34
4.3.1;2.3.1 Organisationsstruktur des Performanceteams;35
4.3.2;2.3.2 Kickoff-Workshop des Performanceteams;38
4.4;2.4 Performance- und Lasttests;48
4.4.1;2.4.1 Der Testplan;49
4.4.2;2.4.2 Testvorbereitung;51
4.4.3;2.4.3 Testdurchführung;56
4.4.4;2.4.4 Analyse und Testberichte;56
4.5;2.5 Zusammenfassung;57
4.6;Literatur;58
5;3 Quantitative Methoden;59
5.1;3.1 Motivation;59
5.2;3.2 Ressourcen und Warteschlangen;61
5.2.1;3.2.1 Begriffsfestlegungen und Definitionen;62
5.2.2;3.2.2 Auslastung und das Utilization Law;63
5.2.3;3.2.3 Das Forced Flow Law;65
5.2.4;3.2.4 Die Queueing-Formel von Little;66
5.2.5;3.2.5 Response Time Law;67
5.3;3.3 Mean Value Analysis;69
5.3.1;3.3.1 Das Arrival-Theorem;71
5.3.2;3.3.2 Implementierung des MVA-Algorithmus;72
5.3.3;3.3.3 Anwendungsmöglichkeiten der Mean Value Analysis;75
5.4;3.4 Zusammenfassung und Ausblick;78
5.5;Literatur;80
6;4 Simulationstechniken;81
6.1;4.1 Motivation;81
6.1.1;4.1.1 Kleine Ursache – große Wirkung;82
6.2;4.2 Rechnergestützte Simulationsmodelle;83
6.2.1;4.2.1 Simulation als Alternative zu Testverfahren;84
6.2.2;4.2.2 Simulation als Alternative zu analytischen Verfahren;84
6.3;4.3 Begriffsbildung und Definitionen;85
6.3.1;4.3.1 Der Systembegriff;86
6.3.2;4.3.2 Der Modellbegriff;86
6.3.3;4.3.3 Datenstrukturen;87
6.4;4.4 Diskrete Ereignissimulation;88
6.4.1;4.4.1 Entitäten, Ressourcen und Attribute;88
6.4.2;4.4.2 Ereignisse, Aktivitäten und Prozesse;89
6.4.3;4.4.3 Algorithmische Grundprinzipien einer Simulation;92
6.5;4.5 Zusammenfassung;96
6.6;Literatur;98
7;5 Dokumentation der Performanceanforderungen;99
7.1;5.1 Motivation;99
7.2;5.2 Nicht-funktionale Anforderungen;101
7.2.1;5.2.1 Die Dualität von Anforderungen;101
7.2.2;5.2.2 Die Bedeutung der nicht-funktionalen Anforderungen;102
7.2.3;5.2.3 Anforderungsdokumentation als Balanceakt;102
7.3;5.3 Die zentralen Performanceanforderungen;103
7.3.1;5.3.1 Mengengerüste und Volumen;103
7.3.2;5.3.2 Antwortzeiten aus Benutzersicht;105
7.3.3;5.3.3 Durchsatz;111
7.3.4;5.3.4 Verfügbarkeit;111
7.3.5;5.3.5 Skalierbarkeit;116
7.4;5.4 Service Level Agreements;118
7.4.1;5.4.1 Performancekontrollen etablieren;119
7.4.2;5.4.2 SLA und SOA;120
7.5;Literatur;122
8;6 Werkzeugunterstützte Kapazitätsplanung;123
8.1;6.1 Zielsetzung und Motivation;123
8.2;6.2 Die Notwendigkeit von Modellerweiterungen;124
8.2.1;6.2.1 High Performance On Demand Solutions;125
8.3;6.3 On Demand Performance Advisor;125
8.3.1;6.3.1 What-If-Analysen und Anwendungsmodi;127
8.3.2;6.3.2 Verfahrensweise;127
8.3.3;6.3.3 MVA-Erweiterungen;132
8.4;6.4 Kapazitätsplanung einer Versicherungsanwendung;133
8.4.1;6.4.1 Antragserfassung und Vertragsverwaltung;133
8.4.2;6.4.2 Anwendungsfälle und Lastszenarien;134
8.4.3;6.4.3 Ressourcenbedarfsermittlung im Lasttest;135
8.4.4;6.4.4 Performanceziele;136
8.4.5;6.4.5 Auswertung des Modells;138
8.5;6.5 Zusammenfassung und Ausblick;141
8.5.1;6.5.1 Restriktionen;141
8.5.2;6.5.2 Ergänzende und alternative Werkzeuge;142
8.6;Literatur;144
9;7 Simulation von Geschäftsprozessen;145
9.1;7.1 Motivation;145
9.1.1;7.1.1 Modelle als Orientierungsrahmen;145
9.1.2;7.1.2 Analogien nutzen;146
9.1.3;7.1.3 Performanceanforderungen identifizieren;146
9.2;7.2 Prozessmanagement und Simulation;146
9.2.1;7.2.1 Analyse und Modellbildung;147
9.2.2;7.2.2 Entwicklung und Deployment;148
9.2.3;7.2.3 Prozessmonitoring;148
9.3;7.3 WebSphere Business Modeler;148
9.3.1;7.3.1 Aktivitäten;149
9.3.2;7.3.2 Business Items;149
9.3.3;7.3.3 Ressourcen und Rollen;150
9.4;7.4 Fallbeispiel Schadensmanagement;150
9.4.1;7.4.1 Automatisierte Belegverarbeitung;151
9.4.2;7.4.2 Der fachliche Hintergrund;152
9.4.3;7.4.3 Die fachlichen Objekte;153
9.4.4;7.4.4 Ressourcen und Rollen;154
9.4.5;7.4.5 Aktivitäten, Services und Entscheidungspfade;154
9.5;7.5 Ziele der Prozessanalyse;157
9.6;7.6 Simulationsergebnisse;159
9.6.1;7.6.1 Ein Arbeitstag in der Schadensabteilung;160
9.6.2;7.6.2 What-If-Analysen;163
9.7;7.7 Zusammenfassung und Ausblick;167
9.7.1;7.7.1 Planung von Simulationsprojekten;168
9.8;Literatur;169
10;8 Java Monitoring und Profiling;170
10.1;8.1 Zielsetzung und Motivation;170
10.2;8.2 Die Qual der Wahl;171
10.2.1;8.2.1 Projektübergreifendes Produktmanagement;172
10.2.2;8.2.2 Performancetests durch Werkzeugevaluierung;174
10.2.3;8.2.3 Anwendungsspezifische Messverfahren;175
10.2.4;8.2.4 Einschränkungen und Nachteile;176
10.3;8.3 Ein Java Monitor im Eigenbau;178
10.3.1;8.3.1 Leistungsbeschreibung des Performancemonitors;179
10.3.2;8.3.2 Profiling versus Monitoring;181
10.3.3;8.3.3 Werkzeugportfolio;183
10.3.4;8.3.4 Die Unterstützung durch Java;183
10.4;8.4 Java Virtual Machine Profiler Interface;187
10.4.1;8.4.1 Klassifikation der JVMPI-Ereignisse;188
10.4.2;8.4.2 Ein erster prototypischer Versuch;190
10.4.3;8.4.3 Byte-Code-Instrumentierung;194
10.4.4;8.4.4 Byte Code Engineering Library;197
10.4.5;8.4.5 Der Monitor im ersten Einsatz;207
10.5;8.5 Neuerungen in Java 5;210
10.6;8.6 Bewertungskriterien für kommerzielle Werkzeuge;214
10.6.1;8.6.1 Schlechte Antwortzeiten bei geringer Systemlast;215
10.6.2;8.6.2 Ressourcenbedarf der Werkzeuge;216
10.6.3;8.6.3 Ressourcenermittlung und Auslastungsprofile;217
10.6.4;8.6.4 End-To-End Monitoring und Transaktionstracking;219
10.6.5;8.6.5 Weitere Anforderungen;221
10.7;8.7 Zusammenfassung;222
10.8;Literatur;223
11;9 Visualisierungstechniken;224
11.1;9.1 Motivation;224
11.2;9.2 Grundlegende Aspekte der Visualisierung;226
11.3;9.3 Streudiagramme;226
11.3.1;9.3.1 Einsatz von Mobilfunktechnologien;227
11.3.2;9.3.2 Laufzeiten eines Servlets;229
11.3.3;9.3.3 Speicherverhalten einer J2EE-Applikation;230
11.4;9.4 Balkendiagramme und Histogramme;232
11.4.1;9.4.1 GPRS-Benchmarkdaten im Histogramm;232
11.4.2;9.4.2 Klasseneinteilung über Anwendungsfälle;234
11.5;9.5 Interaktive Visualisierungstechniken;234
11.5.1;9.5.1 Eine Versicherungsanwendung im Internet;235
11.5.2;9.5.2 Ergebnisse des Tests;237
11.5.3;9.5.3 Die Analyse mit Treemaps;238
11.5.4;9.5.4 Detailanalyse und Problemlösung;241
11.6;9.6 Ein Chartgenerator in Perl;242
11.6.1;9.6.1 Die Struktur der Rohdaten;243
11.7;9.7 Zusammenfassung;248
11.8;Literatur;249
12;10 Beispielszenario Webservice;250
12.1;10.1 Motivation;250
12.2;10.2 Rahmenbedingungen und Gestaltungsmöglichkeiten;251
12.3;10.3 Das Beispielszenario;252
12.4;10.4 Aufbau der Testumgebung;253
12.4.1;10.4.1 Der Webservice;253
12.4.2;10.4.2 Applikationsserver und Lasttreiber;255
12.5;10.5 Der Single-User-Test;257
12.6;10.6 Der Webservice als Warteschlangenmodell;258
12.6.1;10.6.1 Modellierung von Mehrfachressourcen;259
12.6.2;10.6.2 Analytische Performanceprognose und Validierung;260
12.7;10.7 Die Simulation eines Webservice;262
12.7.1;10.7.1 Die Komponenten des Modells;262
12.8;10.8 Das Webservice-Modell in Desmo-J;265
12.8.1;10.8.1 Die Modellklasse;265
12.8.2;10.8.2 Das Ereignis RequesterRequestServiceEvent;268
12.8.3;10.8.3 Das Ereignis WorkerThreadLookUpEvent;269
12.8.4;10.8.4 Das Ereignis WorkerThreadFinishService;270
12.8.5;10.8.5 Ergänzende Elemente der Simulation;271
12.9;10.9 Simulationsergebnisse;273
12.9.1;10.9.1 Häufigkeitsverteilung der Antwortzeiten;274
12.10;10.10 Limitierte Warteschlangen;277
12.11;10.11 Zusammenfassung;278
12.12;Literatur;279
13;Sachverzeichnis;280




