Java OpenJDK-准备好投入生产了吗?

Java OpenJDK-准备好投入生产了吗?,java,openjdk,Java,Openjdk,想知道是否有人从Sun/Oracle JDK切换到OpenJDK 生产准备好了吗?版本7是否与Oracle版本有所不同?OpenJDK中仍然存在可能影响您的操作的回归。例如,见: OpenJDK还不能被认为是Sun Java的安全替代品,请仔细测试您的应用程序 编辑:为清楚起见,所提到的问题是由于OpenJDK的内存使用量比Sun Java稍微增加(不多,但在本例中足以产生内存问题)。在我们的生产环境中,我们开发了一些JavaEE应用程序,我将JDK改为OpenJDK,一切都进行得很顺利。Ope

想知道是否有人从Sun/Oracle JDK切换到OpenJDK


生产准备好了吗?版本7是否与Oracle版本有所不同?

OpenJDK中仍然存在可能影响您的操作的回归。例如,见:

OpenJDK还不能被认为是Sun Java的安全替代品,请仔细测试您的应用程序


编辑:为清楚起见,所提到的问题是由于OpenJDK的内存使用量比Sun Java稍微增加(不多,但在本例中足以产生内存问题)。

在我们的生产环境中,我们开发了一些JavaEE应用程序,我将JDK改为OpenJDK,一切都进行得很顺利。

OpenJDK是否已准备好生产这一问题的答案可能取决于您的应用程序工作负载。在Azul Systems,我们围绕OpenJDK推出了Zulu产品,旨在支持OpenJDK的生产工作负载

为此,我们准备了自己的OpenJDK二进制发行版,在Windows和Linux平台上针对相关Java SE标准(即6、7和8)的技术兼容性工具包(“TCK”)进行测试,然后在各种应用场景中进行测试:Java EE应用服务器、GUI应用程序、基准测试、虚拟化和云环境,调试器等

到目前为止,OpenJDK能够承受多种类型的工作负载。OpenJDK和Hotspot之间仍然存在一些差异,这些差异可能与您自己的工作负载和应用程序设计有关,也可能与您自己的工作负载和应用程序设计无关,例如浏览器JRE插件和Java Web Start在Hotspot中,但不在OpenJDK中。OpenJDK中的核心JVM仍然非常相似:相同的解释器、相同的C1和C2编译器、相同的垃圾收集器、相同的源代码编译器和类API层次结构,以及类似的基本工具。许多剩余的缺口源于产权负担,这意味着Oracle JDK中存在的项目由于其最初的包含和许可影响而无法打开

作为对“IsJava7就绪”的回应,考虑到OpenJDK6的源代码通过IcedTea开源项目的演变,其差异很可能在OpenJDK6中最为明显。OpenJDK 7和OpenJDK 8从GA开始非常相似,然后在整个维护周期中逐渐形成差异,安全补丁定期流入OpenJDK,当Oracle每季度进行关键补丁更新时,还会有大量补丁。另外,在整个生命周期中,从8和9存储库到6和7的有价值的源代码更改和修复会不断发生。好代码就是好代码

当考虑生产操作时,您可能还需要考虑JVM和JDK的技术支持。虽然Zulu本身是免费的,但如果您的生产环境需要支持,Azul将通过Zulu企业产品的不同层次提供基于费用的技术支持

Zulu和Zulu Enterprise在Azul网站上的描述如下:


免责声明:我是Azul Systems的Zulu和Zing产品的产品经理。

在所有需要jvm的情况下,我都使用java-1.8.0-openjdk作为CentOS 7堆栈的一部分。我一直使用它的各种设置的弹性搜索,Hadoop,也作为基础的Eclipse(Luna)。在实验室使用了几个月后,我没有发现任何问题。据我所知,它的性能完美无缺