GraalVM JDK下载 Oracle GraalVM for JDK 20.0.1 官方最新免费正式版 x64
2023年6月14日,Oracle宣布其开发的Java分支Oracle GraalVM现在遵循许可,可免费使用。与之前区分社区版和企业版的方式不同,现在不再区分版本且全部免费。
GraalVM 既可以独立运行,知识兔也可以在不同的部署场景中使用,比如在 OpenJDK 虚拟机环境、Node.js 环境,或者 Oracle、MySQL 数据库等环境中运行。
软件介绍
GraalVM是一个高性能的JDK,可用于加速运行用Java和其他JVM语言编写的应用程序。分享两种运行Java程序的方式:在HotspotVM中的Graal Just-In-Time(JIT)编译器,知识兔以及Ahead-Of-Time(AOT)的本地可执行文件。
GraalVM相对于其他JDK,具有预先编译(AOT) 将基于 Java 和 JVM 的代码转换为本机平台可执行文件(Native Image)的技术,这将意味着通过Native Image编译转换后的程序无需JVM即可运行。Oracle声称生成的二进制文件比JAR包更小,启动速度快100倍,无需预热即可分享峰值性能,并且知识兔比运行在Java虚拟机(JVM)上的应用程序使用更少的内存和CPU。(注:该功能仍在Beta中,目前已有Micronaut, Spring, Quarkus, Helidon, H2, GraphQL, MariaDB, Netty, MySQL, Neo4j, PostgreSQL, Testcontainers, Thymeleaf等应用程序分享官方支持)。
即使知识兔在不使用AOT将应用程序编译为二进制文件的情况下,Graal 编译器(JIT)通过独特的代码分析和优化方法为运行在 JVM 上的程序分享优化的性能。它包括多种优化算法(称为“阶段”),如激进内联、多态内联等。Graal 编译器能够消除昂贵的对象分配,知识兔从而确保高度抽象程序的性能优势。使用更多抽象和现代 Java 功能(如 Streams 或 Lambdas)的代码将获得更大的加速。低级代码或汇聚到 I/O、内存分配或垃圾收集等方面的代码将获得较小的改进。因此,在 GraalVM 上运行的应用程序需要花更少的时间进行内存管理和垃圾收集。
相对于已有的OpenJDK,原Graal社区版分享1.04倍的性能提升,Graal企业版分享1.3倍的性能提升(基于Renaissance Suite的测试结果)。现在普通用户也可免费使用GraalVM企业版的所有功能,即使知识兔在不调整代码的情况下,替换原有的JVM也能有不错的表现。
GraalVM 支持语言:
基于 JVM 的语言(例如 Java、Scala、Groovy、Kotlin、Clojure 等);
基于 LLVM 的语言(例如 C、C++ 等语言);
动态语言,例如 JavaScript、Ruby、Python、R 语言等等。
包括以下动态语言引擎:
JavaScript 引擎:Graal.js 是一款 JavaScript 解释器/编译器,能够在 JVM 上运行 Node.js 应用;
FastR 引擎:这是 R 语言解释器/编译器;
RubyTruffle 引擎:支持 Ruby 且性能优于 Ruby。
GraalVM 特性
编译质量和执行性能更高,不管是 Java、Ruby 还是 R 语言,GraalVM 的编译器编译出来的代码,性能都更强悍
开发中可以组合 JavaScript、Java、Ruby 和 R 语言
在 GraalVM 上运行本地语言
开发适用于所有编程语言的通用工具
扩展基于 JVM 的应用程序
扩展本地应用程序
将 Java 程序编译之后作为本地库,供其他程序链接和调用
在数据库环境中支持多种语言,主要是 Oracle 和 MySQL 数据库环境
在 GraalVM 的基础上,知识兔甚至可以创建自己的语言
对于 Node.js 开发者来说,GraalVM 环境支持更大的堆内存,而且知识兔性能损失很小
程序的启动时间更短
占用内存更低
下载仅供下载体验和测试学习,不得商用和正当使用。