小伙伴们好呀,我是小羊。
age++;
后,我决定收敛下好奇心,挖掘下技术深度。 因为这个号叫 Java4ye,所以第一个专栏就从 Java 开始吧!😝
那么现在的 Java 生态发展到什么情况了呢?
这里我收集了四份报告,一起看看吧
有四大专栏,下面简单介绍下。
从 wiki 上了解到的信息,大致意思是:Oracle 将 Java EE 提交到 Eclipse 基金会,然后就改名成这个 Jakarta EE 了。(雅加达)
对照这个图,可以看到 5 开始支持 注解,7 开始支持 WebSocket 等。
CRaC(协调恢复检查点)项目研究 Java 程序的协调机制,以便在 Java 实例执行时检查点(生成映像、快照)。 从映像恢复可以 解决启动和预热时间 的一些问题。
你可以把预热后的 JVM 保存下来,然后快速启动。
主要是针对 Java 在 微服务 和 serverless 场景下的不足。
下图是 Springboot 3.2 对 CRaC 功能的描述。 👇
下面是 Azul 使用 JDK 17 测试的效果。
效果超给力,确实不是一个数量级的。比如 Spring boot 从 4 s 到 40 ms。
Java21 是目前的最新版, 虚拟线程 功能上线,相应的 虚拟线程框架有 Vert.x 。
云原生方向的新框架: helidon (虚拟线程), micronaut(全栈)。
和上面的 CRaC 不同,它采用 AOT 方式来加速启动 Java。
没想到,Quarkus 来到这一栏了,一直以为还很新颖。
Quarkus 是一个为 GraalVM 和 HotSpot 定制的 Kubernetes 原生 Java 框架
Clojure 是一种现代、功能性、动态的编程语言,它基于Java虚拟机(JVM)运行。它结合了 Lisp 的优雅和 Java 的实用性,提供了强大的并发性和宏系统。
Clojure 这个脚本语言我才发现不久,下面是一个应用例子。
前三个分别是 微服务 , k8s , AI/ML 。
第十个是 GraalVM
这份报告是 23 年 4 月份的,可以看出在 JDK11 之后, G1 垃圾收集器使用率最高。其他内容我就兴致寥寥了,大致说了 JDK17 越来越多人用之类的。
说好的 “你发任你发,我用 Java8” ,结果这么多 17 了。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。