你还在用Java8吗?

Java 11

在企业中,Java的不同版本使用情况随着时间在不断变化。根据最新的数据报告,以下是一些关键点:

  1. Java 11 和 Java 17 成为企业中最常用的长期支持(LTS)版本,使用率分别为 48% 和 45%,而 Java 8 以 40% 的使用率位居第三 。

  2. Java 11 已经成为新的行业标准,其生产中的使用率首次超过了长期占据主导地位的 Java 8 。

  3. Java 14 成为最受欢迎的非LTS版本,尽管非LTS版本的使用率相对较低,只有大约 2.7% 的应用程序在使用非LTS Java版本 。

  4. Oracle JDK 的市场份额正在逐年下降,而 Amazon Corretto 的使用率急剧上升,从 2020 年的 2.2% 上升至 2023 年的 31%,尽管在 2024 年有所下降至 18% 。

  5. Eclipse Adoptium 的采用率也在增长,从 12% 上升到 18%,成为社区管理的JDK中的后起之秀 。

  6. 容器化应用程序 已经成为主流,据 New Relic 调研显示,70% 的 Java 应用来自容器 。

  7. G1 垃圾收集器 仍然是使用 Java 11 或更高版本的用户的最爱,65% 的客户使用它 。

这些数据表明,尽管Java版本更新频繁,但企业在采用新技术方面往往更为谨慎,倾向于使用经过时间验证的稳定版本。同时,随着容器化和云服务的普及,Java生态系统也在适应这些变化,以满足企业的需求。

开源平替

Oracle JDK的商业策略上做出调整上,无疑是将大部分用户推向开源侧,对于寻求Oracle JDK的开源替代方案的企业来说,有几个不错的选择可以考虑:

  1. Amazon Corretto:亚马逊提供的长期支持的OpenJDK发行版,适用于需要在AWS环境中运行Java应用的企业。Corretto JDK经过TCK测试,支持Linux、Windows和macOS。

  2. Azul Zulu:由Azul Systems提供,是Oracle JDK的一个流行的替代品。Azul Zulu Builds是构建在OpenJDK之上的,提供长期支持并且与Java SE标准兼容。

  3. Eclipse Temurin:Eclipse Foundation提供的OpenJDK发行版,也是Oracle JDK的一个优秀替代品。它提供了免费的下载和使用,并且有定期的更新和支持。

  4. AdoptOpenJDK:由伦敦的AdoptOpenJDK项目提供,是一个社区驱动的OpenJDK发行版。它提供了免费的下载和使用,并且有多个版本和不同的操作系统支持。

  5. Red Hat OpenJDK:红帽提供的OpenJDK发行版,适用于需要在Red Hat环境下运行Java应用的企业。它提供了长期支持和企业级的稳定性。

  6. Liberica JDK:由BellSoft提供,是一个免费的、开源的Java开发工具包。它通过了TCK的Java SE规范验证,支持大多数Linux发行版、Windows、macOS和Solaris。Liberica JDK基于OpenJDK,提供了很多安全以及功能更新和性能优化,非常适合云原生架构中使用。

OpenJDK

在这里插入图片描述

企业在选择替代品时,应考虑支持、稳定性、性能、兼容性以及长期维护等因素。可以看出,上述发行版多是基于OpenJDK之上,新构建的产品,OpenJDK与OracleJDK有何关联呢?

OpenJDK是Java SE的一个开源实现,由Oracle赞助和领导,遵循GNU General Public License (GPL)第2版(包括一些例外情况)。它为希望免费使用Java平台的个人和组织提供了一个选择。尽管OpenJDK在功能上与Oracle JDK相似,但两者之间存在一些差异,这可能影响企业的选择:

  1. 授权协议:OpenJDK基于GPL V2协议,允许商业使用,而Oracle JDK遵循JRL协议,主要限于个人研究使用。

  2. Deployment功能:OpenJDK不包含Deployment功能,如Browser Plugin、Java Web Start和Java控制面板。

  3. 源代码完整性:某些Oracle JDK的源代码由于版权问题并未包含在OpenJDK中,如JMX中的SNMP部分。

  4. 性能和稳定性:Oracle JDK通常被认为在稳定性和性能方面更优,而OpenJDK可能在这方面稍逊一筹。

  5. 商标使用:Oracle JDK可以合法使用“Java”商标进行宣传,而OpenJDK则不能。

  6. 商业支持:Oracle JDK提供商业支持服务,而OpenJDK主要依靠社区支持。

尽管存在上述差异,许多企业和组织仍然选择使用OpenJDK,特别是随着Oracle对Java SE的商业化策略调整,OpenJDK的受欢迎程度有所增加。一些企业可能会选择OpenJDK的定制版本或由第三方提供的OpenJDK发行版,例如Amazon Corretto、Azul Zulu、Red Hat OpenJDK、Alibaba Dragonwell、Huawei毕昇JDK、Tencent Kona JDK等,这些发行版通常提供额外的商业支持和增强功能。

企业在选择OpenJDK时,应考虑其业务需求、技术支持、性能要求和合规性等因素。对于寻求免费且开源的Java平台的企业,OpenJDK及其各种发行版是可行的选择。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1549918.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

1Panel安装部署证书(httpsok.com)

1Panel安装部署证书(httpsok.com) 购买服务器 推荐购买香港服务器,这样通过域名访问就不需要备案。 创建静态站点 申请SSL证书 进入 httpsok.com,点击申请证书 输入站点域名 根据提示,添加DNS解析记录 添加成功后,提示域名验证…

免费送源码:Javaspringboot++MySQL springboot 社区互助服务管理系统小程序 计算机毕业设计原创定制

摘 要 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受居民的喜爱,社区互助服务管理系统小程序被居民普遍使用,为…

【二叉平衡搜索树】Treap

前置 本篇是平衡树-treap的补充学习笔记。 Treap - 树堆 学习基础:适合一定基础的:比如,实现了经典二叉搜索树(常用的几个函数写过), 和二叉堆(数组的上浮下沉会写吗?)&a…

Win11右键默认显示更多设置教程

Win11最大的变化之一莫过于右键菜单发生了变化,最大的问题是什么,是右键菜单很多时候需要点两次,实在是反人类,太麻烦了。 简直是反人类! 必须使用“显示更多选项”的右键菜单。 以管理员方式运行CMD 复制以下命令直…

IP6537_C_30W20V--移动设备快充的得力助手,集成 14 种快充协议的降压 SoC

IP6537_C_30W20V是一款集成同步开关的降压转换器、支 持 14 种输出快充协议、支持 Type-C 输出和 USB PD2.0/PD3.0(PPS)协议的 SoC,为车载充电器、 快充适配器、智能排插提供完整的解决方案。 IP6537_C_30W20V支持 USB Type-C 或者 USB A 输出, 5V 输出功…

C++的STL标准模板库容器--vector类

前言:vector类也可以叫作顺序表,他同样也在STL库中的容器模块中,我还是主要讲常用的几个成员函数和成员变量,同时它晚于string类,所以在设计上没有string冗余。 vector类是一个和数组类似的容器,它属于随机…

插上网线无法连接网络,控制面板以太网消失 | 如何重装网络驱动

如果你确定你的网线没问题,网线插口没问题,那你大概率就是驱动问题,可以试一下本方法。 0 以太网消失 事情是这样的,我工作时候需要接内网,插网线,摸鱼时候连外网,我就把网线关了。 每次插网线…

【Python大语言模型系列】开源机器人对话系统框架RASA介绍与使用(案例分析)

这是我的第361篇原创文章。 一、引言 Rasa是一个开源的对话式 AI 框架,用于构建自定义的对话式 AI 助手。它可以处理自然语言理解(NLU)和对话管理(DM),使得开发者能够轻松地创建功能丰富的对话式 AI 应用。…

番外篇 | 应对遮挡挑战,北航提出新型模型YOLOv5-FFM表现优异

前言:Hello大家好,我是小哥谈。在本文中,作者提出了一种改进的轻量级YOLOv5-FFM模型来解决行人检测遮挡问题。为了实现目标,作者在YOLOv5模型框架基础上进行了改进,并引入了Ghost模块和SE模块。此外,作者还设计了一个局部特征融合模块(FFM)来处理行人检测中的遮挡问题。…

I/O中断处理过程

中断控制器位于CPU和外设之间,用于处理I/O中断请求。以下是一个简化的中断控制器: 现在有A,B,C三个中断源。中断响应优先级:A>B>C,中断处理优先级:C>B>A 假设CPU正在处理A中断源的中断请求,此时…

Mixture-of-Experts (MoE): 条件计算的诞生与崛起【上篇】

大型语言模型(LLM)的现代进步主要是缩放定律的产物[6]。 假设模型是在足够大的数据集上训练出来的,那么随着底层模型规模的增加,我们会看到性能的平滑提升。 这种扩展规律最终促使我们创建了 GPT-3 以及随后的其他(更强…

Excel技巧:Excel批量提取文件名

Excel是大家经常用来制作表格的文件,比如输入文件名,如果有大量文件需要输入,用张贴复制或者手动输入的方式还是很费时间的,今天和大家分享如何批量提取文件名。 打开需要提取文件名的文件夹,选中所有文件&#xff0c…

在线翻译器工具横评:性能、准确率大比拼

无论是旅行者在异国他乡探寻风土人情,学者研究国外的前沿学术成果,还是商务人士与国际伙伴洽谈合作,都离不开一种高效、准确的语言沟通工具。而翻译器在线翻译能很好的帮我们解决这个问题。今天我们一起来探讨有那些好用的翻译工具。 1.福昕…

Golang | Leetcode Golang题解之第443题压缩字符串

题目: 题解: func compress(chars []byte) int {write, left : 0, 0for read, ch : range chars {if read len(chars)-1 || ch ! chars[read1] {chars[write] chwritenum : read - left 1if num > 1 {anchor : writefor ; num > 0; num / 10 {…

【题解】2022ICPC杭州-K

翻译 原题链接   简述一下就是每次询问重新定义一个字母排序表&#xff0c;问在这个顺序下n个字符串的序列的逆序数是多少。 字典树计算逆序数 先考虑初始状况下&#xff0c;即 a < b < . . . < z a<b<...<z a<b<...<z的情况下&#xff0c;逆序…

Arch - 架构安全性_验证(Verification)

文章目录 OverView导图1. 引言&#xff1a;数据验证的重要性概述2. 数据验证的基本概念3. 数据验证的层次前端验证后端验证 4. 数据验证的标准做法5. 自定义校验注解6. 校验结果的处理7. 性能考虑与副作用8. 小结 OverView 即使只限定在“软件架构设计”这个语境下&#xff0c…

金融科技革命:API接口开放平台,畅通金融服务之路

金融科技是近年来蓬勃发展的领域&#xff0c;它利用先进的技术手段来改善和创新金融服务。在金融科技的革命中&#xff0c;API接口开放平台扮演着重要的角色&#xff0c;它通过提供统一的接口服务&#xff0c;让金融机构和其他行业能够更方便地进行数据交换和合作。本文将以挖数…

聚星文社最新风格图库角色

聚星文社最新风格图库角色涵盖了各种不同的风格和类型。以下是一些可能的角色风格&#xff1a; Docs聚星文社https://iimenvrieak.feishu.cn/docx/ZhRNdEWT6oGdCwxdhOPcdds7nof 现代都市风格角色&#xff1a;这种角色通常穿着时尚的衣服&#xff0c;有时尚的发型和化妆。他们可…

STM32+PWM+DMA驱动WS2812 —— 2024年9月24日

一、项目简介 采用STM32f103C8t6单片机&#xff0c;使用HAL库编写。项目中针对初学者驱动WS2812时会遇到的一些问题&#xff0c;给出了解决方案。 二、ws2812驱动原理 WS2812采用单线归零码的通讯方式&#xff0c;即利用高低电平的持续时间来确定0和1。这种通信方式优点是只需…

IO端口与IO接口

I/O端口和I/O接口是计算机系统中用于连接外部设备的关键组成部分&#xff0c;两者密切相关&#xff0c;但又有明显的区别&#xff1a; I/O端口 (I/O Port): 定义: I/O端口是内存地址空间中的一组特殊地址&#xff0c;用于与外部设备进行数据交换。CPU通过向这些特定的地址写入…