什么是GraalVM呢?


这个东西好啊,这个东西是一个超级虚拟机,可虚可实,怎么说呢,它可以运行脚本代码,可以运行跨平台代码,最牛B的是,它TM还能把这些代码编译成机器码,你说上哪说理去,执行效率CUA的一下就上去了,速度可媲美C++,就是这么不讲武德。

它可以运行什么代码呢?

有:Java, Python, Ruby, JavaScript & Node.js, R, LLVM

这玩意儿都谁在用呢?

首先说的是以“福报”著称的阿里巴巴,用这玩意儿干啥呢?用他们自己开发的SOFA Boot框架写微服务应用,然后用GraalVM编译成机器码扔到服务器上,这样启动快,还省内存。

还有就是被墙的推特,推特有1000台服务器,装了1000个jvm,但是用了GraalVM,节省了8%——11%的CPU,仅Tweet服务就省了18%的机器。

用python处理grads数据 graalvm python_java

用python处理grads数据 graalvm python_用python处理grads数据_02

官方网站:点这里就是官方网站


 

GraalVM怎么安装呢?


第一步

去官网下载,有两个版本,一个是丐版(社区版),一个是壕版(企业版),下个丐版就行,壕版的要钱。

丐版会跳到github里去下载 (社区版各版本下载地址),有两个版本,Java 8 和 Java 11的,做web的话,Java 8就行,做FX就得下Java 11了,这个GraalVM里没集成 OpenJFX,得自己下,下完了把文件复制到GraalVM目录里。

下载OpenJFX的网站:点这里点这里点这里

第二步

解压下载下来的zip压缩包,然后配环境变量,和Java配的方法一样,起名起JAVA_HOME就行,如果你想做FX,再配一个GRAALVM_HOME,值和JAVA_HOME一样

用python处理grads数据 graalvm python_Windows_03

然后运行一下 java -version

用python处理grads数据 graalvm python_用python处理grads数据_04

第三步(编译为平台码用,以Windows为例)

下载Microsoft C++生成工具:点这里

然后安装如图所示

用python处理grads数据 graalvm python_Java_05

装完了之后配置环境变量  ★重要★

INCLUDE=C:\Program Files (x86)\Windows Kits\10\Include\10.0.17134.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.17134.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.17134.0\shared;D:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.16.27023\include.;
LIB=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17134.0\um\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17134.0\ucrt\x64;D:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.16.27023\lib\x64;
PATH=%PATH%;D:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.16.27023\bin\HostX64\x64

然后安装GraalVM插件 命令:

C:\Users\Administrator> gu install native-image

如果出现jar包下载超时,请手动下载jar包,然后放到 \lib\installer\components 文件夹下,就不用cmd去下载了。

安装完成后 运行下面的命令查看已安装的插件

C:\Users\Administrator>gu list
ComponentId              Version             Component name                Stability           Origin
--------------------------------------------------------------------------------------------------------
js                       21.0.0.2            Graal.js                      -
graalvm                  21.0.0.2            GraalVM Core                  -
native-image             21.0.0.2            Native Image                  Early adopter       github.com

此时,所有环境搭建的工作全部完毕。