Overview
Java performance is an often misunderstood discipline. Join Ben Evans (author of the O’Reilly book "Optimizing Java" and noted performance expert) to learn how to deepen your understanding of Java performance. Some of the core topics we’ll cover:
- What you need to know about how the JVM & how it works to get better performance
- How to reduce resource utilisation with Java 11 / 17 / 21 & save money on your AWS bill
- Why Java 11, 17 & 21 are better suited to containerised applications than Java 8
- How to use Flight Recorder to monitor and diagnose problems with your applications
- Observability, and what it means for the Java developer
This is an online-only course delivered over 4 half-day sessions i.e. one session per week over 4 weeks.
Outline
Session 1 – Introduction & Overview
- Why is Java Performance Complex?
- How Not To Do Java Performance
- Overview / Anatomy of the JVM
- A Day in the Life of an Executing Java Program
- HotSpot's Runtime Data Structures
- Tools – JDK Flight Recorder (JFR)
Session 2 – Garbage Collection
- Introduction to GC Theory
- Hotspot’s Heap & Parallel Collection
- Advanced Garbage Collection
- G1
- Other Collectors
- Practical Considerations (Containers)
Session 3 – Executing Code
- Overview of Executing Methods
- Interpreter & Bytecode
- JIT Compilation
- Native Compilation
Session 4 – Observability
- Observability Concepts
- Introducing OpenTelemetry
- Java & OpenTelemetry
- Future Roadmap
Requirements
You should have a laptop capable of running Docker and multiple concurrent threads - ideally a quad-core or dual-core with hyperthreading. You should also have Java 8+ and your favourite IDE installed.
About The Trainer
Ben Evans is an author, speaker, consultant and educator. He is co-founder and Technology Fellow of jClarity, a startup which delivers performance tools to help development & ops teams. He helps to organise the London Java Community, and represents them on the Java Community Process Executive Committee where he works to define new standards for the Java ecosystem. He is a Java Champion, JavaOne Rockstar, co-author of "Optimizing Java" and "The Well-Grounded Java Developer", and a regular public speaker on the Java platform, performance, concurrency, and related topics.