赞
踩
GraalVM是一种高性能的运行时,可显着提高应用程序的性能和效率,非常适合微服务。 它设计用于以Java,JavaScript,基于LLVM的语言(例如C和C ++)以及其他动态语言编写的应用程序。 它消除了编程语言之间的隔离,并实现了共享运行时的互操作性。
参考官方文档https://www.graalvm.org/docs/introduction/
GraalVM 既可以独立运行,也可以作为 OpenJDK 或 Node.js 平台的一部分嵌入,甚至可以在 Oracle 数据库中执行。
使用 GraalVM 可以将 Java 应用直接编译成二进制的机器码生成一个 Native Image,让这个程序可以像一般二进制文件运行,Native Image 可以更快速的启动一个 Java 应用, Native Image 的快速启动特性,能够达到无服务器计算的目的。
GraalVM 既可以独立运行,也可以作为 OpenJDK 或 Node.js 平台的一部分嵌入,甚至可以在 Oracle 数据库中执行。反正很吊。
使用 GraalVM 可以将 Java 应用直接编译成二进制的机器码生成一个 Native Image,让这个程序可以像一般二进制文件运行,Native Image 可以更快速的启动一个 Java 应用, Native Image 的快速启动特性,能够达到无服务器计算的目的。
还可以重用来自 Java、R 或 Python 的库,在也不用使用jython,j++,之类的库了。
并且可以为现有的基于 jvm 的应用程序创建本机映像。映像生成过程使用静态分析来查找从主 Java 方法可访问的任何代码,然后执行完全提前(AOT)编译。生成的本机二进制文件以机器码的形式包含整个程序,以便立即执行。它可以与其他本地程序链接,也可以选择包含 GraalVM 编译器,以提供对实时(JIT)编译的补充支持,从而运行任何基于 graalvm 的高性能语言。为了获得额外的性能,可以通过在应用程序前一次运行中收集的配置文件优化来构建本机映像
gu --version
gu install native-image
gu list 查看是否成功:
./helloworld 执行
jar --create --verbose --file HelloWorld.jar --main-class HelloWorld *.class
time java -jar HelloWorld.jar
time ./helloworld
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。