How we improved APM Java startup by encoding a prefix trie as a JVM constant
Datadog | The Monitor blog

How we improved APM Java startup by encoding a prefix trie as a JVM constant


Summary

To improve Java application startup performance, Datadog's APM team reduced class-matching overhead by 30% by optimizing how classes are selected for instrumentation. They achieved this by replacing complex runtime structures with `ClassNameTrie`, a prefix trie encoded as a single JVM string constant. This allows for rapid, I/O-free prefix matching during the critical `premain` phase when the JIT compiler is not yet active.
Read the Original Article

This article originally appeared on Datadog | The Monitor blog.

Read Full Article on Original Site

Popular from Datadog | The Monitor blog

1
DASH 2026: Guide to Datadog’s newest announcements
DASH 2026: Guide to Datadog’s newest announcements

Datadog | The Monitor blog Jun 9, 2026 257 views

2
DASH 2026 Harnessing AI: Guide to Datadog’s newest announcements
DASH 2026 Harnessing AI: Guide to Datadog’s newest announcements

Datadog | The Monitor blog Jun 9, 2026 210 views

3
Datadog LLM Observability natively supports OpenTelemetry GenAI Semantic Conventions
4
Introducing Bits AI Dev Agent for Code Security
Introducing Bits AI Dev Agent for Code Security

Datadog | The Monitor blog Mar 26, 2026 142 views

5
Instrument and monitor Boomi integration flows with OpenTelemetry and Datadog
Instrument and monitor Boomi integration flows with OpenTelemetry and Datadog

Datadog | The Monitor blog Apr 9, 2026 141 views