Question

Wondering if anyone switched from Sun/Oracle JDK to OpenJDK?

Is it production ready? Is the version 7 release any different from the Oracle version?

Was it helpful?

Solution

There are still regressions in OpenJDK that might affect your operations. See for example : Memory error when trying to change Apache Tomcat port from 8080 to 80

OpenJDK can't be considered as a safe drop in replacement for Sun Java yet, test carefully your applications.

EDIT: For clarity, the issue mentioned is caused by a slightly increased memory usage of OpenJDK compared to Sun Java (not much, but sufficiently to create a memory issue in this case).

OTHER TIPS

The answer to the question of whether OpenJDK is production-ready likely depends on your application workload. At Azul Systems, we launched the Zulu product around OpenJDK with the intention of supporting production workloads with OpenJDK.

To do this, we prepare our own binary distributions of OpenJDK, test them against the Technology Compatibility Kit ("TCK") for the relevant Java SE standard (ie. 6, 7, and 8) on Windows and Linux platforms, then exercise them in various application scenarios: Java EE application servers, GUI apps, benchmarks, virtualization and cloud contexts, debuggers, etc.

So far OpenJDK is standing up to many types of workloads. There remain a handful of differences between OpenJDK and Hotspot that may or may not pertain to your own workload and application design, for example the browser JRE plugin and Java Web Start are in Hotspot but not in OpenJDK. The core JVM in OpenJDK remains very similar: same interpreter, same C1 and C2 compilers, same garbage collectors, same source compiler and class API hierarchy, and similar basic tools. Many of the remaining gaps stem from encumbrances, meaning items present in the Oracle JDK that could not be made open from their original inclusion and license impact.

In response to the "is Java 7 ready", the differences were indeed likely most pronounced in OpenJDK 6, given its source code evolution through the IcedTea open source project. OpenJDK 7 and OpenJDK 8 started off at GA very similar, then grow to have differences throughout the maintenance cycle, where security fixes flow into OpenJDK regularly, along with big batches of fixes when Oracle does their quarterly critical patch updates. Plus, backports of worthy source changes and fixes into 6 and 7 from the 8 and 9 repositories happen continually throughout the lifecycle. Good code is good code.

When considering production operations, you may also want to consider tech support for the JVM and JDK. While Zulu itself is free, if your production environment warrants support, Azul offers fee-based tech support through different tiers of the Zulu Enterprise offering.

Zulu and Zulu Enterprise are described on the Azul website here: http://www.azulsystems.com/products/zulu

Disclaimer: I am the Product Manager for Zulu and Zing products at Azul Systems.

In our production environment we develop some JavaEE applications, I changed JDK to OpenJDK, everything worked pretty well.

I have been using java-1.8.0-openjdk as part of CentOS 7 stack in all cases of needing a jvm. I have been using it with various setups of Elasticsearch, Hadoop, and also as the foundation for Eclipse (Luna). I have not seen any issues after months of use with these applications in the lab. It has performed flawlessly as far as I can tell.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top