下一代的多语言JVM:GraalVM

GraalVM是一款高性能的可嵌入式多语言虚拟机,它能运行不同的编程语言,包括:

  • 基于JVM的语言,比如Java, Scala, Kotlin和Groovy
  • 解释型语言,比如JavaScript, Ruby, R和Python
  • 配合LLVM一起工作的原生语言,比如C, C++, Rust和Swift

GraalVM能有效地支持多语言应用,你可以在一个进程里同时使用多种编程语言而不会带来明显的性能开销——这样你就可以根据具体问题来选择不同语言的解决方案了。

GraalVM的设计目标是可以在不同的环境中运行程序:在JVM中、或者编译成独立的本地镜像、亦或是将Java及本地代码模块集成为更大型的应用。

GraalVM是一个大型项目,它有很多可插拔的组件,这使得它几乎无所不能。随便列举几点,它可以更快地运行Java程序,可以取代Nashorn来运行Node.js程序,可以运行Ruby, Python还有R。它可以把Java程序编译成只有数M大小的可执行的本地镜像,可以在Docker容器中运行,而加载时间只有几毫秒。它可以像数据库执行存储过程那样执行JavaScript代码,却不会像数据库那样要消耗太多资源。

GraalVM是一个开源项目,绝大部分是由Java编写的,不是 native code 的专家也可以参与这个项目中来。也就是说日常用于Java开发的工具就可以用来开发GraalVM。

延伸阅读:http://it.deepinmind.com/jvm/2019/08/15/graalvm-polyglot-vm.html


转载请注明来源。 欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。 可以在下面评论区评论,也可以邮件至 sharlot2050@foxmail.com。

文章标题:下一代的多语言JVM:GraalVM

字数:412

本文作者:夏来风

发布时间:2021-05-08, 17:56:10

原始链接:http://www.demo1024.com/blog/java-graalvm/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。