哈喽,大家好,我是指北君
。
今天给大家推荐的是 Oracle Labs 开源的跨语言全栈虚拟机—— GraalVM 。
对不需要长时间运行的、小型化的应用来说, Java 天生就带有一些劣势,特别是近几年从大型单体应用架构向小型微服务应用架构发展,再进一步上云原生技术潮流下, Java 表现出来很多不适应。
体现在单个微服务随时可以中断和更新的场景中, Java 启动时间相对较长、需要预热才能达到最高性能的特点,这种不适应尤为明显。
而在无服务架构中,上面的不适应更加突出。相比服务,一个函数的规模通常小,执行时间短。
为适应新的技术趋势和需求, GraalVM 应运而生。
GraalVM 简介
GraalVM 是一个高性能 JDK 发行版,旨在加速用 Java 和其他 JVM 语言编写的应用程序的执行,同时支持 JavaScript、Ruby、Python 和许多其他流行语言。GraalVM 的多语言功能可以在单个应用程序中混合多种编程语言,同时消除外语调用成本。
GraalVM 架构
GraalVM 为 HotSpot Java 虚拟机添加了一个用 Java 编写的高级即时 (JIT) 优化编译器。
除了运行 Java 和基于 JVM 的语言之外,GraalVM 的语言实现框架 (Truffle)使得在 JVM 上运行 JavaScript、Ruby、Python 和许多其他流行语言成为可能。借助 Gra