~/talk

Profiling your Java Application A Beginner’s Guide

Talkat DevDays 2023 · 2023-06-06..06-09· [observability, devops-and-delivery]
slides:none on file

Uses micrometer/Prometheus/Zipkin for black‑ and gray‑box checks, then profiles with Java Flight Recorder (opened in Java Mission Control or Glowroot). Finds a GDPR aspect making an unexpected HTTP call, a class‑level @Transactional causing connection starvation (clients waiting ~60s), an HTTP client pool limited to 4 connections, and Lombok toString triggering lazy loads. Changes (move annotations, increase pool, exclude collections from toString) cut endpoint latency about 5× and shift time from 80% network to ~20% DB/CPU.

AI-written summary · about

  1. 0:00Introduction
  2. 2:34Response time in Java apps
  3. 8:11Profiling microservices
  4. 12:24Java Flight Recorder basics
  5. 16:57Setting up profiling
  6. 19:07First flame graph results
  7. 23:22Hidden aspects and network calls
  8. 27:15Transaction proxy performance
  9. 30:51Connection starvation fixes
  10. 33:18Lazy loading and toString issues
  11. 35:48HTTP client pool optimization
  12. 37:35Final flame graph analysis
  13. 38:39Lock contention detection
  14. 41:28Advanced Flight Recorder features
  15. 43:37Solving Java performance issues
  16. 44:20Summary
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.