EDUT242 Java Performance Tuning Workshop
Do you feel like you’re on the drunkards walk randomly stumbling towards solutions to your performance issues? This is the norm for most organizations but it doesn’t have to be.
This comprehensive four day workshop will show you how to use our widely tested Java Performance Tuning Methodology (jPDM) to quickly and definitively find the root cause of your performance woes. jPDM has been proven world wide by our consultants and workshop attendees to resolve tough performance problems. Past attendees have told us that they were able to solve long standing nagging performance issues on the Monday morning return to their projects.
The course will introduce free and open source tooling that can be used immediately. Already got a fancy commercial tool? We say, all the better as this workshop will help make you more effective with them also. Looking at buying a fancy commercial tool? The workshop will help you decide which products have the features you'll need and which ones will work best for you. No tips, no tricks, just a solid, proven approach to Java performance troubleshooting that won't be obsolete with the next release. Exercises taken from real world problems designed to expose how Java and the Java Virtual Machine works.
Attendees of this workshop will learn how to:
- Quickly identify the root causes of poor performance in your applications
- Eliminate conditions that will prevent you from finding performance bottlenecks
- Find critical supportive evidence before deciding on a potentially expensive course of action
Intermediate java knowledge is recommended.
- Introduction to Performance
- Covers a number of introductory theoretical concepts such as Little, Amdahl, and Gunter’s law, response time curves and how the cause performance to be an emergent property of a system.
- Theory of constraints and how it applies to performance diagnostics *new*
- Introduction of a micro services latency model *new*
- Effects of system pauses on Microservice latency
- HotSpot memory management
- Garbage Collectors
- Native memory
- GC analysis and tuning
- Introduction into JIT basics
- JIT effects on macro-performance
- JIT effects on micro-benchmarks
- Monitoring HotSpot
- Tuning HotSpot
- Improving Observability
- Topics covered includes taking measure, timers, timing, logging and journaling
- Fundamentals of macro-benchmarking
- Introduction including biases in profilers
- Memory profiling
- Execution profiling
- Memory leak detection
- Native memory leak detection
- Adding custom events to Java Flight Recorder
- Java Performance Diagnostic Model
- A model to help define a taxonomy for performance regressions, root cause analysis, and a tooling decision tree.
- Interprocess Communications
- Overview of common marshaling techniques
- Tools to monitor IPC
- Java Management eXtentions
- Overview of JMX tooling
- Building your own MXBean
- Techniques to improve application liveliness