Your SlideShare is downloading. ×
0
2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace
2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace
2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace
2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace
2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace
2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace
2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace
2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace
2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace
2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace
2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace
2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace
2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace
2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace
2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace
2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace
2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace
2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace
2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace
2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace
2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace

982

Published on

2011 ČVUT X33EJA Výkonové Aspekty JEE, Monitoring a optimalizace, hlavní oblasti ovlivňující výkon, proč monitorovat?, základní funkce monitorovacího nástroje, JMX, JDK tools, jconsole, visualvm, …

2011 ČVUT X33EJA Výkonové Aspekty JEE, Monitoring a optimalizace, hlavní oblasti ovlivňující výkon, proč monitorovat?, základní funkce monitorovacího nástroje, JMX, JDK tools, jconsole, visualvm, Glassfish monitoring, první pomoc

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
982
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. X33EJA Výkonové Aspekty Java/JEEMonitoring a optimalizace
  • 2. Obsah prezentace I Hlavní oblasti ovlivňující výkon Java/JEEII Proč monitorovat?III Nástroje pro monitoringIV Monitoring GlassfishV Otázky a odpovědi 2
  • 3. Hlavní oblasti ovlivňující výkon Java/JEE Správa paměti Správa prostředků a zdrojů Optimalizace datové vrstvy Návrh a implementace 3
  • 4. Hlavní oblasti ovlivňující výkon Java/JEE Správa paměti Nastavení JVM  Optimalizace parametrů, GC Tuning  -server -client  -Xmx -Xms -Xss -XX:MaxPermSize  http://java.sun.com/performance/reference/whitepapers/tuning.html Memory Leaks Optimalizace programu  HTTP Session  Object Pooling  Caching 4
  • 5. Hlavní oblasti ovlivňující výkon Java/JEESpráva paměti 5
  • 6. Hlavní oblasti ovlivňující výkon Java/JEE Správa prostředků a zdrojů Execution Threads  Maximální počet paralelně zpracovávaných požadavků Pooling & Caching  Connection Pool  Thread Pool  Instance Pool Clustering  LoadBalancing, FailOver 6
  • 7. Hlavní oblasti ovlivňující výkon Java/JEE Optimalizace datové vrstvy Výběr kvalitního JDBC driveru Správa zdrojů  Connection Pool (min, max, validation, …)  PreparedStatement, Statement Caching  Instance Pool Databáze  Analýza a optimalizace SQL  Indexy  Parametry databáze, update statistik 7
  • 8. Hlavní oblasti ovlivňující výkon Java/JEE Návrh a implementace Využití asynchronních procesů  JMS Minimalizace použití XML Využití cache  Hibernate Second Level Cache  Ehcache Minimalizace použití vzdáleného volání (Remoting) Pečlivý výběr knihoven třetích stran 8
  • 9. Proč monitorovat? Zajištění dostupnosti aplikace  Preemptivní X Reakční Odhalení performance problémů  Testovací prostředí  Produkční prostředí Analýza problémových stavů Reporting 9
  • 10. Nástroje pro monitoring Profiling X Monitoring Profiling X Monitoring Profiler  Vývojářský nástroj  Velký overhead Monitorovací nástroj  Vhodný do testovacího i produkčního prostředí 10
  • 11. Nástroje pro monitoring Základní funkce monitorovacího nástroje Nízký overhead Neovlivňování monitorované aplikace Kvalita poskytovaných metrik a efektivní práce Monitoring 24x7 Snadná instalace a konfigurace Systém Alert - Action Reporty 11
  • 12. Nástroje pro monitoring První pomoc Problémy s CPU  Thread Dump Problémy s pamětí  Heap Dump • -XX:+HeapDumpOnOutOfMemoryError • Analýza pomocí podpůrných nástrojů  Různé oblasti paměti (Heap, Non-Heap) Problémy s využíváním ostatních zdrojů  JMX metriky 12
  • 13. Nástroje pro monitoring JMX Standard JMX (Java Management Extensions)  http://www.oracle.com/technetwork/java/javase/tech/javamanagement-140525.html  Umožňuje přístup k aplikačním objektům • Nastavovat atributy • Volat metody, inicializovat aplikace nebo komponenty  Možnost získávat statická data  Registrovat události  Atd... MC4J (http://sourceforge.net/projects/mc4j/)  JMX Browser 13
  • 14. Nástroje pro monitoring SUN JDK Tools jps (JVM Process Status Tool)  list JVM process jstat (JVM Statistics Monitoring Tool)  performance statistics about class loader, compiler, gc  jstat –gcutil 1234 250 7 jmap, jhat  memory profiling, HeapDump  jmap –dump:format=b,file=heap.bin 1234  jhat -J-mx768m -stack false heap.bin jstack  ThreadDump, Threads Stack Trace  jstack 1234 14
  • 15. Nástroje pro monitoring SUN JDK Tools jconsole (Java Monitoring and Management Console)  Memory, Threads, Classes, MBeans  http://download.oracle.com/javase/6/docs/technotes/guides/management/jconsole.html visualvm (All-in-One Java Troubleshooting Tool)  http://visualvm.java.net/  Modernější nástroj pro monitoring Java aplikací  Obsahuje Profiler  http://download.oracle.com/javase/6/docs/technotes/guides/visualvm/index.html  http://pietrowski.info/2009/06/visualvm-performance-tuning-tool/  jvisualvm in last java distribution 15
  • 16. Nástroje pro monitoring Volně dostupné nástroje Log4j, SLF4j (http://www.slf4j.org/) SAP Memory Analyzer Memory Analyzer (http://www.eclipse.org/mat/) P6Spy, Iron Track SQL (http://sourceforge.net/projects/p6spy/)  Monitoring JDBC rozhraní JIP (http://jiprof.sourceforge.net/)  Profiler 16
  • 17. Nástroje pro monitoring Komerční nástroje CA Wily Introscope  Java/JEE, .NET  Real-Time Application Performance Monitoring (APM)  Proaktivní detekce a diagnostika performance problémů  Identifikace komponent a jejich závislostí HP Diagnostics APMXpert (http://www.opnet.com) DynaTrace (http://www.dynatrace.com) 17
  • 18. Monitoring Glassfish Static JMX Service URL  service:jmx:rmi:///jndi/rmi://localhost:8686/jmxrmi Monitoring Service  Nastavitelné v „Admin Console“  JVM, HTTP Service, Transaction Service, JMS Service, ORB, Web Container, EJB Container, JDBC Connection Pool, Thread Pool Application Server / Monitor  Možnost jednoduchého prohlížení metrik přímo v „Admin Console“ 18
  • 19. Monitoring Glassfish jconsole, visualvm  Memory, CPU, Classes, Threads, Profiler  JMX Metrics: root com.sun.appserv • jdbc-connection-pool • http-listener-1 • keep-alive • connection-queue • … proprietary  JMX Metric web viewer  JMX Metric automatic store 19
  • 20. Otázky a odpovědi Otázky? 20
  • 21. Děkuji za Vaši pozornost Martin Ptáček martin.ptacek@wincor-nixdorf.cz +420 739 681 075 Wincor Nixdorf s.r.o. Lužná 591, 160 00 Praha 6 http://www.wincor-nixdorf.cz 21

×