Open In App

Migration to Open JDK from Oracle JDK

Improve
Improve
Like Article
Like
Save
Share
Report

Let us first discuss the need for migration. It is as follows as in the year 2018, Oracle announced that after January 2019, businesses will need to purchase a commercial license (i.e., from Oracle) in order to receive software updates. Keep Oracle Java and upgrade to supported patch level and pay the subscription costs.  To give you an idea of the cost, each core of the server must be licensed, and it costs US $25 core per month.  Also, if the server is in a virtualized environment, the entire cluster “cores” would be liable for license fee even if you have just one server with Java in the cluster.

1. Pre-requisite: Let us go through technical requirements prior to comparing Oracle Java v/s Open JDK.

Oracle has introduced a subscription fee for anything newer than Oracle Java JE 8 patch 211 and JDK 11, and it is not ideal to keep the version at an older, non-supported patch level from a security vulnerability point of view.  Therefore, we must determine if Oracle  Java JE or JDK installed are indeed necessary to run any of the applications on the server or not.

For each server that you own, we ask that you select the appropriate response as follows:

  • Uninstall the Oracle Java versions if it/they are not needed
  • Opt to go with Open source versions again if compatible with your need

Note: Some applications which require Oracle Java may have included this cost as a part of the main application license fee, please validate this with your application vendor.

Keep Oracle Java and upgrade to supported patch level and pay the subscription costs.  To give you an idea of the cost, each core of the server must be licensed, and it costs the US $25 core per month.  Also, if the server is in a virtualized environment, the entire cluster “cores” would be liable for license fee even if you have just one server with Java in the cluster.

 2. Existing Implementation of Oracle JDK

As per Oracle support the last non-billable Java version Java 1.8.0.202 (64 bit) let us first go through the highlights.

  • The biggest difference between OpenJDK and Oracle JDK is licensing. OpenJDK is a completely open-source Java with a GNU General Public License. Oracle JDK requires a commercial license under the Oracle Binary Code License Agreement.
  • Since January 2019, businesses now need to purchase a commercial license (from Oracle) in order to receive software updates.
  • Historically, Oracle JDK has had better performance than OpenJDK. However, the performance of OpenJDK is growing. And the contributions of the OpenJDK community often outperform Oracle JDK.
  • OpenJDK is 99% the same code as Oracle JDK (depending on what provider you’re getting it from) so what this really boils down to is support.

3. OpenJDK Lifecycle Dates and RHEL versions

RHEL 5 Support Added RHEL 6 Support Added RHEL 7 Support Added RHEL 8 Support Added End of Support for OpenJDK version is as follows:

OpenJDK  6 (1.6) 5.3 6.0 7.0 N/A December 2016
OpenJDK  7 (1.7) 5.9 6.3 7.0 N/A June 2020
OpenJDK  8 (1.8) N/A 6.6 7.1 8.0 May 2026
OpenJDK 11   N/A N/A 7.6 8.0 October 2024

The Service Level Agreement (SLA) and Scope of Coverage (SoC) for OpenJDK is determined as below, for production deployments of OpenJDK on RHEL and Windows the SoC is defined (Production Support Scope of Coverage that is Red Hat Customer Portal) and the SLA is defined (Production Support Terms of Service — Red Hat Customer Portal).

4. Release Schedule

Oracle will deliver releases every three years, while OpenJDK will be released every six months

5. License

Oracle JDK was licensed under the Oracle Binary Code License Agreement, whereas OpenJDK has the GNU General Public License (GNU GPL) version 2 with a linking exception.

6. Performance 

There is no real technical difference between the two since the build process for the Oracle JDK is based on that of OpenJDK. When it comes to performance, Oracle’s is much better regarding responsiveness and JVM performance. It puts more focus on stability due to the importance it gives to its enterprise customers. OpenJDK, in contrast, will deliver releases more often. As a result, we can encounter problems with instability.

7. Features

If we compare features and options, we’ll see that the Oracle product has Flight Recorder, Java Mission Control, and Application Class-Data Sharing features, while OpenJDK has the Font Renderer feature. Also, Oracle has more Garbage Collection options and better renderers.

8. Development and Popularity

Oracle JDK is fully developed by Oracle Corporation whereas the OpenJDK is developed by Oracle, OpenJDK, and the Java Community. However, top-notch companies like Red Hat, Azul Systems, IBM, Apple Inc., SAP AG also take an active part in its development.

9. Cost-Benefit Analysis

Keep Oracle Java and upgrade to supported patch level and pay the subscription costs. To give you an idea of the cost, each core of the server must be licensed, and it costs US $25 core per month.  Also, if the server is in a virtualized environment, the entire cluster “cores” would be liable for license fee even if you have just one server with Java in the cluster.


Last Updated : 09 Mar, 2021
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads