Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Javantura v6 - Java Mission Control now in OpenJDK - best practice - Josip Pojatina

68 views

Published on

If there is one tool that have almost all what is needed for monitoring, troubleshooting and tuning Java apps, that will be JMC. There are several reasons why JMC will be a hot topic in Java events from now on:
- More than 95% of all issues related to JVM, application servers, deployed apps and even OS can be resolved by leveraging JFR and JMC
- less than 3% overhead makes JFR ideal for production environments
- Java Flight Recorder is Open Sourced now and it's bundled with OpenJDK 11
- Java Mission Control went Open Source too, thus both components can be used in production
Although latest version 7.1 is in Early Access state, even now you can play with and figure out what you can expect in the final release.
From Automated Analysis results, through the spectacular views of most important events, flexible configuration, filtering only events of interest, this tool will become (and already is) pearl in Java developing, monitoring, troubleshooting and tuning.
Equipped with GPL license, it's not difficult to imagine that the whole ecosystem will be created around with dozens of plug-ins (in Oracle JDK version of JMC there are just a few plugins available like JConsole, DTrace Recorder, WebLogic Tab Pack and few more).
In presentation several topics will be described:
- how to install Open Sourced version of JMC
- best practice of how to make JFR recordings
- how to analyze results with such formidable powerful tool

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Javantura v6 - Java Mission Control now in OpenJDK - best practice - Josip Pojatina

  1. 1. Performatune Ltd.Performatune Ltd. Josip Pojatina www.performatune.com www.josip-pojatina.com Java Mission Control now in OpenJDK – best practice
  2. 2. Performatune Ltd.Performatune Ltd.  About  Introduction to OpenJDK Mission Control  History of JMC Tools  Current & future state of JMC tools  Installation instructions  OpenJDK 7.1 Mission Control Console  Oracle Java Mission Control Console  Q & A Table of contents
  3. 3. Performatune Ltd.Performatune Ltd.  Performance troubleshooting & tuning  Architecture and design of systems based on Oracle & Open Source technology  Business processes optimization (production scheduling, logistic tuning, inventory optimization, planning, supply chain tuning) based on Operational Research algorithms  Big Data, Machine Learning & AI  More on: www.performatune.com About Performatune
  4. 4. Performatune Ltd.Performatune Ltd.  Solution architect for the most demanding European IT systems  Working experience with Fortune 100 companies  Regular speaker at Oracle User Group (OUG) conferences  European High Performance Computing Society member  Operational Research & Management Science Society member  Oracle and Open Source performance troubleshooting & tuning  www.josip-pojatina.com & www.performatune.com among Top 100 Oracle Blogs and Websites for Oracle DBAs to follow in 2019 (https://blog.feedspot.com/oracle_blogs) About the author
  5. 5. Performatune Ltd.Performatune Ltd. • OpenJDK Mission Control is open source set of tools for the Java virtual machine • Main tool to troubleshoot and to tune everything what is running on top of JVM like: – Desktop Java apps – Java apps deployed on Java Application Server (JEE) – Enterprise Service Bus / Integration – Big Data, ML, AI (Spark, Kafka, Hbase, Hive, MapReduce...) – IoT Introduction to OpenJDK MC
  6. 6. Performatune Ltd.Performatune Ltd. • One tool to rule them all (replaces OS monitoring, JConsole, jmap, jhat, jstat, JvisualVM...) • JMC performs: – Monitoring – Troubleshooting – Profiling • JDK Mission Control consists of the following components: – JFR (Java Flight Recorder) – JDK Mission Control Console Introduction to OpenJDK MC
  7. 7. Performatune Ltd.Performatune Ltd. • JDK Mission Control Console: – is a JMX based console that exposes MBeans attributes – It provides easy way to configure recordings – to visualize result of recording • Java Flight Recorder: – Java heap distribution – Garbage collections – Method samples – Latency data – Lock profiling information ... Introduction to OpenJDK MC
  8. 8. Performatune Ltd.Performatune Ltd. • Why OpenJDK Mission Control? – > 95% of all issues can be resolved by using JMC – Very low overhead of JFR sampling (< 3%) makes it ideal for production systems (the same can not be always said for some of the commercial end-to-end monitoring solutions) • Default JFR configuration < 1% overhead • Profile JFR configuration --> around 2% – Everything needed for troubleshooting, tuning & monitoring can be found within one tool – Extremely flexible and configurable regarding what will be sampled by JFR through the JMC GUI (written in jfc files) Introduction to OpenJDK MC
  9. 9. Performatune Ltd.Performatune Ltd. • Why OpenJDK Mission Control? – Extremely flexible Introduction to OpenJDK MC
  10. 10. Performatune Ltd.Performatune Ltd. • Why OpenJDK Mission Control? – Advanced configuration (100+ additional options) Introduction to OpenJDK MC
  11. 11. Performatune Ltd.Performatune Ltd. • Why OpenJDK Mission Control? – Extensible (through plug-ins) -> currently only in Oracle JMC Introduction to OpenJDK MC
  12. 12. Performatune Ltd.Performatune Ltd. • Why OpenJDK Mission Control? – It's Open Source now!!! – Previously you need to execute the following: • -XX:+UnlockCommercialFeatures -XX:+FlightRecorder – Now, with OpenJDK 11 both options can be dropped – JMC tools are like time machine (like VCR): you can go back and forth and to choose only time fragment of interest – Source code is not needed to troubleshoot – It's mature (check the history slides) – It's productive and effective in terms of visualization Introduction to OpenJDK MC
  13. 13. Performatune Ltd.Performatune Ltd. • JRockit is created by Appeal Virtual Machines • JRockit Flight Recorder used to improve the JVM • where acquired by BEA Systems in 2002 • BEA Systems where acquired by Oracle in 2008 • Sun Microsystems where acquired by Oracle in 2010 • Oracle merged JRockit and Sun HotSpot in Oracle JDK 7 • Under Oracle JRockit Flight Recorder was rebranded as Java Flight Recorder • 2018 Java Flight Recorder was open sourced in openJDK 11 and was rebranded as JDK Flight Recorder History of JMC tools
  14. 14. Performatune Ltd.Performatune Ltd. • JRockit Mission Control part of JRockit JVM distribution • Under the Oracle renamed into Java Mission Control when Oracle merged JRockit & Sun HotSpot into one JDK (JDK7 update 40) • Open sourced in 2018 and renamed into JDK Mission Control • From now on JDK Mission Control is separate product independent from JDK and not included in the JDK11 – Positive: • JDK download is smaller & prepared for IoT – Negative: Permission from the client is needed to install OpenJDK Mission Control (time consuming process, sometimes impossible) History of JMC tools
  15. 15. Performatune Ltd.Performatune Ltd. • Work on JFR is completed • JMC is in Early Access State (in development) • Plug-ins functionality of the JMC doesn't work yet (will be functional in production version of Mission Control) • No available installation for OpenJDK MC yet – For installation you'll need Mercurial, Maven... – Instructions on openJDK page are not completely accurate – Bugs Current state of JMC tools
  16. 16. Performatune Ltd.Performatune Ltd. • Depends on Open Source developer community • JMC (even in early access phase) are spectacular • Expected to see more plug-ins comparing with current state to fill what is missing (Open Source Community support needed) Some of ideas: – Tomcat plug-in (WebLogic plug-in is available for years) – WildFly (ex. Jboss) plug-in – Big Data stack plug-ins (Spark, Kafka...) – JMS plug-in for WebLogic & others Future of the JMC tools
  17. 17. Performatune Ltd.Performatune Ltd. • Correct instructions you can find on the following pages: – https://www.josip-pojatina.com/en/openjdk-mission-control- how-to-install-properly/ – https://www.performatune.com/en/openjdk-mission-control- how-to-install-it-properly/ Installation instructions
  18. 18. Performatune Ltd.Performatune Ltd. • Automated Analysis Results – new feature OpenJDK 7.1 Mission Control
  19. 19. Performatune Ltd.Performatune Ltd. • Automated Analysis Results – new feature OpenJDK 7.1 Mission Control
  20. 20. Performatune Ltd.Performatune Ltd. • Automated Analysis Results – new feature OpenJDK 7.1 Mission Control
  21. 21. Performatune Ltd.Performatune Ltd. • Automated Analysis Results – new feature OpenJDK 7.1 Mission Control
  22. 22. Performatune Ltd.Performatune Ltd. • Automated Analysis Results – new feature OpenJDK 7.1 Mission Control
  23. 23. Performatune Ltd.Performatune Ltd. • Automated Analysis Results – new feature OpenJDK 7.1 Mission Control
  24. 24. Performatune Ltd.Performatune Ltd. • Automated Analysis Results – new feature OpenJDK 7.1 Mission Control
  25. 25. Performatune Ltd.Performatune Ltd. • Detail analysis OpenJDK 7.1 Mission Control
  26. 26. Performatune Ltd.Performatune Ltd. • Detail analysis OpenJDK 7.1 Mission Control
  27. 27. Performatune Ltd.Performatune Ltd. • Detail analysis OpenJDK 7.1 Mission Control
  28. 28. Performatune Ltd.Performatune Ltd. • Detail analysis OpenJDK 7.1 Mission Control
  29. 29. Performatune Ltd.Performatune Ltd. • Detail analysis OpenJDK 7.1 Mission Control
  30. 30. Performatune Ltd.Performatune Ltd. • Detail analysis OpenJDK 7.1 Mission Control
  31. 31. Performatune Ltd.Performatune Ltd. • Detail analysis OpenJDK 7.1 Mission Control
  32. 32. Performatune Ltd.Performatune Ltd. • Oracle JMC + Plug-ins Oracle Java Mission Control
  33. 33. Performatune Ltd.Performatune Ltd. • Oracle JMC + Plug-ins Oracle Java Mission Control
  34. 34. Performatune Ltd.Performatune Ltd. • Oracle JMC + Plug-ins Oracle Java Mission Control
  35. 35. Performatune Ltd.Performatune Ltd. • Oracle JMC 6 Automated Analysis Oracle Java Mission Control
  36. 36. Performatune Ltd.Performatune Ltd. • Always copy and analyse jfr file on the separate machine by using the OpenJDK Management Console to minimize resource contention • When troubleshooting first use default JFR template (later you can troubleshoot by customizing default template) • Despite very low impact, on High Performance envs. It is better to enable/disable JFR on demand • JFR recording can be compressed • Better to have multiple 30 mins recordings instead of one large Best practice
  37. 37. Performatune Ltd.Performatune Ltd. Java Stored Procedures - Q & A

×