New Relic近日发布了一份《2023 年 Java 生态系统状况报告》,这份报告收集了上百万份线上的应用程序的数据,统计了目前生产环境中使用最多的JDK版本,最受欢迎的JDK供应商以及容器等的相关数据。
首先大家最关心的就是目前市面上主流的JDK版本到底是多少,现在基本上有结论了,目前市面上有超过56%的应用程序使用了JDK 11,而相比之下,Java 8 的使用从2020年的84%降低到了现在的32%左右,大部分公司在这三年之间都升级到了JDK 11 或者 JDK 17这两个LTS版本上面。
相比于2022年不到1%的应用使用JDK 17来看,2023年共有超过 9% 的应用程序在生产中使用 Java 17 ,这意味着其在一年内实现了 2300% 的增长率。
基于 Spring Boot + MyBatis Plus + Vue & Element 实现的后台管理系统 + 用户小程序,支持 RBAC 动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能
-
项目地址:https://github.com/YunaiV/ruoyi-vue-pro
-
视频教程:https://doc.iocoder.cn/video/
在JDK 的厂商上面,Amazon这两年的增长量是比较大的,从22%上升到了31%,是目前市面上的各个JDK厂商中占比最高的。
在垃圾收集器方面,在Java 11 及以上的版本中,G1垃圾收集还是比较受欢迎的,占比有65%。
因为G1通过把Java的堆分为多个大小相等的Region,可以基于这些Region进行整堆的垃圾回收,从而避免了内存碎片的产生。并且G1在回收的过程中,标记和清理的过程是并行的,可以充分利用多个CPU来缩短STW的时长,在复制的过程中是并发的,可以让复制线程和用户线程并发执行,不需要STW。
基于 Spring Cloud Alibaba + Gateway + Nacos + RocketMQ + Vue & Element 实现的后台管理系统 + 用户小程序,支持 RBAC 动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能
-
项目地址:https://github.com/YunaiV/yudao-cloud
-
视频教程:https://doc.iocoder.cn/video/
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
原文标题:Java 8 腰斩!Java 17 暴涨 2300%!!
文章出处:【微信号:芋道源码,微信公众号:芋道源码】欢迎添加关注!文章转载请注明出处。
相关推荐
Java中时间戳的使用
发表于 11-06 16:04
•123次阅读
Java Web和Java是两个不同的概念,它们在功能、用途和实现方式上存在一些区别,下面将详细介绍它们之间的区别。 1. 功能和用途: – Java是一种编程语言,它提供了一种用于开发各种应用程序
发表于 07-16 13:35
•673次阅读
我已经在机器上安装了最新版的 Java 10,打开 Cube 却得到要求安装 Java 1.7.0_45 的提示。何解?Eclipse CDT 依赖 Java,不可卸载重装。
发表于 04-26 06:23
我有几个关于 XMC 引脚排列工具的问题。
首先我想问一下 XMC Pinout Tool 是否可以不受限制地使用免费的 Java 版本(Oracle Java SE v17 LTS)运行?
其次
发表于 01-22 06:18
Java 17+ 被重新归类为 Java 17,仍处于 早期采用者 阶段,因为有更多的框架将 Java
发表于 12-13 11:17
•428次阅读
Java环境配置成功后,我们可以使用几种方式来运行Java程序。下面将详细介绍这几种方式以及其使用方法。 命令行运行方式 在成功配置Java环境后,我们可以通过命令行来运行Java程序
发表于 12-06 15:57
•2028次阅读
Java是一种广泛使用的编程语言,用于开发各种应用程序。在开始学习和使用Java之前,您需要搭建和配置Java开发环境。本教程将提供详细的Java环境搭建及配置指南。 下载
发表于 12-06 15:50
•743次阅读
创建Java项目是一个相对较为复杂的过程,需要考虑到各种细节和步骤。本文将详细介绍如何创建一个Java项目。 一、准备工作 在创建Java项目之前,我们需要进行一些准备工作,主要包括以下几个方面
发表于 12-06 14:09
•878次阅读
在Eclipse中运行Java项目是非常简单的。下面了解一下如何在Eclipse中运行Java项目。 首先,确保您已经在Eclipse中创建了Java项目。如果您尚未创建,请按照以下步骤进行操作
发表于 12-06 11:25
•1946次阅读
Java中的OOM(Out of Memory)异常是指当Java虚拟机的堆内存不足以容纳新的对象时抛出的异常。OOM异常是一种常见的运行时异常,经常出现在长时间运行的Java应用程序或处理大数
发表于 12-05 13:47
•1209次阅读
是的,byte属于Java的基本数据类型之一。Java中共有8种基本数据类型,分别是byte、short、int、long、float、double、char和boolean。byte类型用于表示
发表于 12-05 10:40
•821次阅读
了8种基本类型:byte、short、int、long、float、double、char和boolean。这些基本类型都有对应的包装类,用于将基本数据类型转化为对象。 包装类: 包装类是一种特殊的类,用于将基本数据类型封装为对象。在Java中,每一种基本数据类型都有对应
发表于 12-03 11:08
•7639次阅读
从Java 8 到 Java 20,Java 已经走过了漫长的道路,自 Java 8 以来,
发表于 11-23 16:38
•1090次阅读
要查看Java程序的内存分布,首先需要了解Java程序运行时的内存模型。 Java程序的内存分布可以分为以下几个部分:程序计数器、Java虚拟机栈、本地方法栈、
发表于 11-23 14:47
•999次阅读
模型。Java内存模型分为线程栈、堆、方法区(Java 8之前称为永久代,Java 8后称为元空间)和本地方法栈
发表于 11-23 14:46
•3101次阅读
评论