September 30, 2022

COSFONE

Networking, PBX, IT, DIY Solution

2022 Java Ecological Report: Java 8 is abandoned and Oracle’s share shrinks over 50%.

6 min read

2022 Java Ecological Report: Java 8 is abandoned and Oracle’s share shrinks over 50%.



 

2022 Java Ecological Report: Java 8 is abandoned and Oracle’s share shrinks over 50%.

 

Recently, the well-known technology company New Relic (a SaaS service provider headquartered in San Francisco, USA) released the “2022 State of the Java Ecosystem Report”, which aims to expose the current status of the Java ecosystem.

 

While there is no shortage of programming languages ​​to choose from in the modern, sprawling software industry, Java is popular with software developers for its platform independence and thousands of supported libraries, the report said. Therefore, Java can be seen in almost every major industry and economic sector.

 

2022 Java Ecological Report: Java 8 is abandoned and Oracle's share shrinks over 50%

 

In March 2020, New Relic released the first State of the Java Ecosystem report based on data collected from millions of applications that provide performance data.

 

And with the release of Java 17, the first long-term support (LTS) release since Java 11, the data collected before is going to be revisited.

 

So, based on the latest data collected, New Relic conducted a survey on the following five areas: the most used version in production, the most popular vendor, the rise of containers, the most common heap size configuration and the most commonly used garbage collection algorithm.

 

The data in the report comes entirely from applications reported to New Relic in January 2022 and does not represent the full picture of Java usage.

New Relic anonymizes and deliberately coarse-grained appropriate data to provide an overall overview of the Java ecosystem. In addition, any details that might aid attackers and other malicious behavior were deliberately excluded from the report.

 

Here are the details from the 2022 State of the Java Ecosystem Report:

 

Java 11 succeeds Java 8 and becomes the most popular version

In the report published in 2020, although Java 11 had been released for more than a year at the time, the vast majority of applications were still using Java 8 (84.48%). But since then, the ratio between the two LTS versions has changed.

 

The data shows that over 48% of applications now use Java 11 in production (up from 11.11% in 2020), followed by Java 8 with 46.45%. Java 17’s ranking isn’t very high at the moment, but it has surpassed the share of Java 6, Java 10, and Java 16 releases in the months since its release.

 

2022 Java Ecological Report: Java 8 is abandoned and Oracle's share shrinks over 50%

Percentage usage of each Java LTS version

 

Also, support for Java 7 will end in 2022, but 1.71% of applications still use it in production. At the same time, 0.27% of applications are using Java 6 which is already EOL. However, most currently using Java 6 and Java 7 are generally legacy applications that have not yet been upgraded.

 

Java 14 is the most popular non-LTS version

Beginning with Java 9, the release pattern for the Java platform has changed, with a new version of Java being rolled out every six months.

However, in order to provide new features more frequently, the support cycle for these versions generally only lasts until the next new version is released.

 

However, ad hoc, non-LTS Java version usage remains very low compared to LTS versions in production, with only 2.7% of applications using non-LTS Java versions.

While vendors such as Azul Systems provide patches for some non-LTS releases, most do not. This may be the reason why many users are reluctant to upgrade.

 

2022 Java Ecological Report: Java 8 is abandoned and Oracle's share shrinks over 50%

Percent usage of each Java non-LTS version

 

Of the non-LTS Java versions used, Java 14 is the most popular, with Java 10 and Java 16 tied for bottom.

 

Oracle’s share shrinks, Amazon is on the rise

The source of distributions that use the Java Development Kit (JDK) has changed in recent years.

In the past, many developers would obtain JDK from Oracle , and now the open source of Java in the OpenJDK project brings developers a lot of choices.

 

As can be seen from the graph below, developers move binaries from Oracle after Oracle’s stricter licensing of the JDK 11 release (and before reverting to a more open stance in Java 17).

 

In 2020, Oracle is the most popular vendor, accounting for about 75% of the Java market.

Although the top spot is now retained, the share has shrunk to less than half of its original size.

At the same time, the market share of Amazon, where the father of Java worked, has risen sharply to 22.04% (2.18% in 2020).

 

2022 Java Ecological Report: Java 8 is abandoned and Oracle's share shrinks over 50%

Percentage of JDK distributions used by each vendor

 

In addition to the general trend away from Oracle, there have been interesting shifts in these numbers since November 2021.

That is, prior to the release of Java 17, Eclipse Adoptium and Amazon were in almost exact opposite positions on this list.

 

Containers run mainstream

Containerized applications have gone mainstream, as evidenced by New Relic’s Java application data.

According to the report, more than 70% of Java applications are run based on containers.

 

Calculation settings in the container

Containers affect the way people allocate computing and memory resources.

For example, the report data shows that a much higher percentage of applications running in containers have fewer than four cores.

 

Percentage of applications running inside and outside containers by number of cores

 

In a cloud environment where people often deploy containers, the drive to run miniaturization makes sense. But this trend may cause unexpected problems for some applications.

Especially when running with less than two cores, many of the concurrency advantages of the default G1 garbage collector on recent Java Virtual Machines (JVMs) disappear.

All these single-core instances are probably using the serial collector and paying the performance cost, but many developers may not even know it.

 

Memory settings in containers

A similar trend occurs when comparing memory settings, tending to favor smaller instances in containers.

 

Percentage of heap size set for memory running inside and outside the container

 

Report data shows that only about 80% of containerized applications explicitly require JVM memory caps via the -Xmx or -XX:MaxRAMPercentage flags.

As of Java 9, container awareness in the JVM means that as long as the JVM is the only process running in each container, it’s not as much of a security concern for applications as it used to be.

 

G1 is the most popular GC algorithm

Given its central role in JVM performance, garbage collection (GC) remains one of the most discussed topics in the community.

 

Data from New Relic shows that the use of garbage collectors has changed significantly since Java 8.

Given that Java 11 and later G1 collectors have updated defaults and higher performance, it’s not surprising that G1 is popular with developers.

 

Percentage of GC algorithms used by Java 10 or earlier vs. Java 11 or later

 

Obviously, many developers choose to abandon Java 8 out of love for G1. Also, to be expected, the other experimental collectors that came out after Java 8 (ZGC and Shenandoah) are still in very low usage in production systems, after all these two collectors have only recently reached production-ready status.

 

Reference:

https://newrelic.com/resources/report/2022-state-of-java-ecosystem
2022 Java Ecological Report: Java 8 is abandoned and Oracle’s share shrinks over 50%

 



Copyright © All rights reserved. | Newsphere by AF themes.