Resources and Links
Last updated 2025-12-25
Newsletters
- Observability 360 - A newsletter that focuses on observability and monitoring. It’s a great way to keep up with the latest trends and tools in the space.
Blogs
- Brendan Gregg’s Blog - Brendan Gregg is an engineer who has written a number of books on performance and systems. His writings are a treasure trove of information on performance analysis and tuning.
- Richard Startin’s Blog - Richard Startin is an engineer who has done a lot of work on JVM profiling and has written a lot of interesting blogs that dive deep into the JVM and performance.
- Cees Bos’s Blog - A fellow observability enthusiast who writes about various topics in the observability space, including OpenTelemetry. Really great content.
- Aleksey Shipilëv’s JVM Anatomy Quarks Series - A series of blog posts that dive deep into various aspects of the JVM. Highly recommended for anyone interested in Java performance and internals.
Blog Posts
- OpenTelemetry Java Metrics Performance Comparison - A blog by Jack Berg comparing some differences and performance benchmarks between different Java metric systems.
- Embracing invokedynamic to tame class loaders in Java agents by Felix Barnsteiner, Rafael Winterhalter
- OpenTelemetry Autoinstrumentation in Java by Dash0 -
A great overview of different methodologies for instrumenting Java applications - Demystifying Automatic Instrumentation - A great blog by Severin Neumann that covers the mechanics of how different automatic instrumentation approaches work (monkey patching, bytecode manipulation etc.)
Videos
- Netty, the IO framework that propels them all By Stephane LANDELLE - Really great talk on Netty and how it works under the hood.
- Netty - One Framework to rule them all by Norman Maurer - Another great talk on Netty internals, and how it’s been optimized. Touches on ByteBuffers and memory management.
- ZGC Automatic Heap Sizing by Erik Österlund - While the primary topic of this video is around ZGC, there is a lot of really great information around memory usage in the JVM in general.
- Making Java More Dynamic | Rafael Winterhalter - Overview of bytebuddy and code generation in Java. This tooling is one of the pillars of OTel java instrumentation.
- AWS re:Invent 2024 - Try again: The tools and techniques behind resilient systems (ARC403)
- A great talk that covers the nuances and implications of different resiliency approaches in distributed systems. Topics covered include retries and circuit breakers.
- How To Think About Instrumentation Overhead - Jason Plumb, Splunk
- A good talk by one of my Java SIG-mates about how to think about overhead from instrumentation.
- Java annotation processing magic for muggles by Álvaro Sánchez Mariscal Arnaiz
- A great, in depth talk that covers things like ASM, byte-buddy, reflection, proxies, and all kinds of things related to byte code generation and manipulation.