Unleash the Power of Open-Source Java Profilers
summary
A practical walkthrough of open-source Java profilers that shows concrete wins: a quiz web server hitting ~90 concurrent users slows to crashes when every request rereads a JSON file, then after switching storage to SQLite it handles hundreds of users reliably. Covers async-profiler (embeddable via AP-loader), JFR/JMC with custom JFR events, and flame graphs for locating the hotspot. Reports measured overheads (~0–2% for JFR, ~0–4% for async) and demos an IntelliJ profiling plugin plus continuous tools (Parca/Parasoft-style) used in real debugging workflows.
AI-written summary · about
chapters (15)
- 0:00Introduction
- 1:26Conference app disaster
- 3:12What is profiling
- 9:59Types of profilers
- 13:38Building your own profiler
- 19:48External vs built-in profilers
- 23:23Trusting profilers
- 25:50Profiling loop
- 27:57Using Async Profiler
- 31:57JDK Flight Recorder
- 34:06Custom JFR events
- 36:13JFR in IDEs
- 38:22Continuous profiling
- 39:05Profiling in toolbox
- 40:09Closing and resources
related talks
33mWriting a Java Profiler in Pure Java
39mFive most useful profiling techniques to use with modern Java apps
50mJPoint 2023 TechRadar: Performance Tools
01h 05mWorkshop: Crash Course on Open Source Profilers (part 1)
01h 17mWorkshop: Crash Course on Open Source Profilers (part 2)
50mObservability Beyond the Three Pillars — Continuous Profiling With Alibaba Dragonwell
42mWrite your own Java Profiler in 240 lines of pure Java
46mCPU Profiling on the JVM and Flame Graphs
