BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage News New Relic Release April 2024 Java Report

New Relic Release April 2024 Java Report

This item in japanese

New Relic, a leading observability and monitoring company, has released its latest report on the state of the Java ecosystem. Key takeaways include that less than 30% of applications remain on Java 8, Oracle continues to lose ground to the OpenJDK vendors, and using relatively small heap sizes is very common.

This report fundamentally differs from other studies in the marketplace because New Relic uses actual production data as reported by their customer's JVMs. This means it is high-quality, directly observed data about how languages are actually being used.

The report is based on data received from 62 million JVM instances that reported to New Relic at least once in the last month, which corresponds to around 500k distinct production Java apps.

New Relic has been monitoring the Java ecosystem for the past few years to uncover shifts in how developers are using it, and the 2024 State of the Java Ecosystem report examines:

  • The most used Java versions in production
  • The most popular JDK vendors
  • The use of compute and memory in Java applications
  • The most popular Java frameworks and libraries for logging, encryption, and databases

Starting from the evergreen question of Java versions, one of the most striking things is the continued decline of Java 8.

Less than 30% of applications remain on Java 8, and as such, it should now be considered a legacy version, especially in light of major frameworks  (such as Hibernate 6, Mockito 5, and Spring 6) dropping Java 8 support.

On the leading edge, in the six months after the release of Java 21, 1.4% of applications monitored by New Relic were using it. To put this into perspective, in the six months after Java 17 was introduced, only 0.37% of applications were using it.

This rapid adoption can likely be attributed to two things:

  • Virtual threads arriving as a final feature
  • The ease of upgrading from 17 to 21

In terms of Java vendors, Oracle continues to lose ground to the OpenJDK vendors, especially Eclipse Adoptium and Amazon's Corretto. Oracle is still the market leader, but is now only a couple of percentage points ahead of Adoptium, with Amazon close behind them.

The picture regarding garbage collectors is slightly more complicated. Although G1 is the standout market leader, with over 70% market share, this is because it is the default GC for Java version 9 and later - and will be used if no collector is specified.

However, this comes with an important caveat: in a single-core container the G1 collector will be deactivated, and the Serial collector will be used instead. This is because G1 is an inherently concurrent algorithm, and so it has no benefit over Serial on a single core.

As a result, the G1 result is probably overstated relative to Serial, due to the number of single-core containers reporting to New Relic.

In addition, relatively small heaps are very common, with over 30% of reporting JVMs using 1 GB or less of memory and a further 27% using 1-2 GB. This is broadly in line with the megatrend of decomposing systems into smaller microservices with smaller heap sizes.

Looking at the most popular libraries for logging, security and databases: no real clear winners can be seen -- the market remains fragmented. Furthermore, many applications report using multiple logging frameworks. We can see this clearly with log4j in use by 76.4%, JBoss Logging at 61.2% and Logback at 52.2%, which sums to well over 100%.

The New Relic report also includes some results around the most popular questions asked of their newly-introduced AI Assistant.

You can see some of the earlier reports from 2020 and 2019 for a more detailed picture of how the Java ecosystem has changed over the last few years.

About the Author

Rate this Article

Adoption
Style

BT