近日,New Relic公布了最新的2022 Java生态系统报告,这份报告能够帮忙咱们深刻的理解Java体系的最新应用状况,上面就一起来看看2022年,Java倒退的怎么样了,还是Java 8 YYDS吗?

Java 11成为新的规范

在2020年的时候,Java 11曾经推出了1年多,但过后Java 8的占有率高达84.48%。2年过来了,Java 11上生产的比例第一次超过Java 8,占有率曾经达到了48.44%。曾今的霸主Java 8简直跌掉了一半,以46.45%占据第二。

而大势所趋的、整个Java生态都在拥抱的Java 17在排行榜上还是处于比拟低的地位。这个其实还是意料之中的,因为生态的反对还须要肯定工夫的演进,比方Spring这个Java生态的大基座,对于Java 17的重要反对还要等到今年年底的Spring Boot 3公布(对这部分感兴趣的小伙伴记得关注我,公众号程序猿DD,长期分享这块最前沿的业余解读),同时周边的其余各种框架、中间件也都要全面更上之后,才真正具备上生产的成熟度。

所以,先从Java 8到Java 11,还是一个不错的抉择,小步快跑,省得到时候间接从Java 8到Java 17,步子太大,扯到x就不好了...

我正在连载Java 8之后的新个性解读,这次一改之前的博客格调,采纳文档(https://www.didispace.com/java-features/)+ 视频(B站、视频号)的形式编写,浏览与学习体验更加。感兴趣的小伙能够关注珍藏起来,能转发分享下那是更好,这样更有更新的能源。

最风行的非LTS版本:Java 14

从Java 9开始,Java版本的公布模式产生了变动。每隔6个月就会有一个新版本公布,但这些版本只在下一个版本之前受到官网反对。这样做的目标是让新性能更频繁可用。

然而,与生产中的LTS版本相比,这些长期的非LTS版本使用率始终都非常低,只有2.7%的应用程序在应用。

尽管像Azul Systems这样的一些供应商在一些非LTS版本上提供了补丁,但大多数的供应商没有这么做。这可能是为什么大家不违心应用的起因。在非LTS Java版本中,Java 14最受欢迎。

Oracle在缩水,Amazon在崛起

这次的报告中,值得关注的是JDK发行版的变动。尽管大部分开发人员还是会从Oracle取得JDK,而OpenJDK我的项目中的开源内容曾经产生了丰盛的抉择。

上图显示了Oracle在对其JDK 11发行版进行更严格的许可证管制之后(在应用Java 17返回到更凋谢的立场之前)的变动。2020年的时候,Oracle以绝对优势(约占Java市场的75%)成为最受欢迎的供应商。2年过来了,尽管他们仍然还是头把交椅,但他们的份额曾经缩小了一半。而Amazon的市场占有率从2020年的2.18%大幅攀升至22%。

从2021年11月以来,还有一些乏味的变动:在Java 17公布之前,Eclipse Adoptium和Amazon在这份榜单上简直处于齐全相同的地位。

容器中的资源分配

计算资源的配置

容器会影响人们调配计算和内存资源的形式。这份报告中的数据显示,在容器中运行的应用程序中,少于四个外围的应用程序所占的比例要高得多。

在人们常常部署容器的云环境中,小规模运行的驱动力很有意义。但这一趋势可能会给一些应用程序带来意想不到的问题。比方:当运行的内核少于2个时,在最近JVM上应用默认的G1垃圾收集器所带来的许多并发益处就隐没了。所有这些单核实例可能都在应用串行收集器,并为此付出了性能代价,但许多人可能甚至不晓得这一点。

内存资源的配置

在比拟内存设置时,也会呈现相似的趋势,它们偏向于给容器中的实例调配更小的内存。

该报告中显示,只有大概80%的容器化应用程序通过-XMX或-XX:MaxRAMPercentage标记显式申请JVM内存下限。从Java 9开始,JVM中的容器感知性能意味着这可能不会像过来那样对这些应用程序造成平安问题,只有JVM是每个容器中运行的惟一过程。

最罕用的垃圾收集算法

垃圾收集(GC)算法在JVM性能中起到核心作用,所以这块始终以来都是社区探讨最多的话题。新的数据显示,在Java 8之后,垃圾收集器的应用产生了显著的变动。

G1的总体受欢迎水平十分高。思考到Java 11和更高版本上的G1收集器具备更新的默认设置和更高的性能,所以这一后果这并不令人诧异。

原始报告我放到公众号里了,对细节内容感兴趣的话,能够在公众号中发送关键词:relic-java-2022,获取残缺报告。

好了,明天的剖析那个就到这里!如果您学习过程中如遇艰难?能够退出咱们超高品质的Spring技术交换群,参加交换与探讨,更好的学习与提高!

欢送关注我的公众号:程序猿DD。第一工夫理解前沿行业音讯、分享深度技术干货、获取优质学习资源