摘要:前陣子,發布了一個黑科技,號稱是一個全新的通用全棧虛擬機,并具有高性能跨語言交互等逆天特性,真有這么神奇簡介是一個跨語言的通用虛擬機,不僅支持了等基于的語言,以及等基于的語言,還支持其他像和語言等。原生鏡像加速來看這段代碼,同樣來自官網。
前陣子,Oracle 發布了一個黑科技 "GraalVM",號稱是一個全新的通用全棧虛擬機,并具有高性能、跨語言交互等逆天特性,真有這么神奇?
GraalVM 簡介GraalVM 是一個跨語言的通用虛擬機,不僅支持了 Java、Scala、Groovy、Kotlin 等基于 JVM 的語言,以及 C、C++ 等基于 LLVM 的語言,還支持其他像 JavaScript、Ruby、Python 和 R 語言等。
GraalVM 有以下幾個特性。
更加高效快速的運行代碼
能與大多數編程語言直接交互
使用 Graal SDK 嵌入多語言
創建預編譯的原生鏡像
提供一系列工具來監視、調試和配置所有代碼
官網:http://www.graalvm.org/GraalVM 有什么用? 1、支持多種語言組合編程
來看下面這段代碼,來自官網。
const express = require("express"); const app = express(); app.listen(3000); app.get("/", function(req, res) { var text = "Hello World!"; const BigInteger = Java.type( "java.math.BigInteger"); text += BigInteger.valueOf(2) .pow(100).toString(16); text += Polyglot.eval( "R", "runif(100)")[0]; res.send(text); })
它同時使用了 Node.js、Java、R 三種語言,是不是很奇葩?
GraalVM 消除了各種編程語言之間的隔離性,那這種多編程語言結合使用會不會有性能影響?官方的說明是:零開銷的互操作,這樣,我們就可以為應用程序選擇最佳的編程語言組合。
2、原生鏡像加速來看這段代碼,同樣來自官網。
$ javac HelloWorld.java $ time java HelloWorld user 0.070s $ native-image HelloWorld $ time ./helloworld user 0.005s
GraalVM 可以預編譯成原生鏡像,從而極大提速了啟動時間,并能減少 JVM 應用的內存占用。
4、可嵌入式運行環境GraalVM 可以被嵌入到各種應用程序中,既可以獨立運行,也可以在已經內置好的 OpenJDK、Node.js、Oracle、MySQL 等環境中運行。
結合上面的特性,我們來看下 GraalVM 的架構圖。
GraalVM 版本介紹如下圖所示,GraalVM 提供了社區版和企業版兩個版本。
從特性來看,上述所說的高性能、內存優化貌似都在企業版中??企業版或者可能只是在社區版上又增加了額外的提升吧!
社區版下載:github.com/oracle/graal/releases總結
GraalVM 這玩意看起來很不錯,可以說這就是一個全棧開發平臺,不僅支持主流編程語言,還能組合在一起編程,根據不同任務來選擇最佳的語言。另外。它還能提高更高的執行效率,以及占用更少的內存。
至于應用場景,是否可應用于生產,現在還真不好說。這么一個{{BANNED}}級的產品,我們期待它有更好的發展吧。
@ 程序猿:你們覺得 GraalVM 前景如何,或者有什么實際用途?歡迎留言!資料:成為架構師的十階段學習資料!
教程:史上最強 Spring Boot & Cloud 教程匯總
工具:推薦一款在線創作流程圖、思維導圖軟件
掃描關注我們的微信公眾號,回復 "666" 可獲取一套Java并發編程高清視頻教程。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/76500.html
摘要:我是你們熱愛的,年過去了,我給你們總結一下這一年發生在我身上的大事。第二件事,中國的那家叫做阿里巴巴的公司正式進入了的執行委員會,這可是個了不起的成就。 摘要: Java年終盤點。 原文:我是Java,這是我的2018年總結 作者:劉欣 微信公眾號:碼農翻身 Fundebug經授權轉載,版權歸原作者所有。 我是你們熱愛的Java,2018年過去了,我給你們總結一下這一年發生在我身...
摘要:月底了,又到了我們總結這一個月技術干貨的時候了,又到了我們給粉絲免費送書的日子了。 月底了,又到了我們總結這一個月 Java 技術干貨的時候了,又到了我們給粉絲免費送書的日子了。 7 月份干貨總結 Oracle 發布了一個全棧虛擬機 GraalVM 一文帶你深入拆解 Java 虛擬機 圖文帶你了解 8 大排序算法 Spring Boot 2.x 新特性總結及遷移指南 Spring B...
摘要:從版本開始,不再單獨發布或者版本了,有需要的可以自己通過去定制官方解讀官方細項解讀穩步推進系列六的小試牛刀一文讀懂的為何如此高效棄用引擎 Java語言特性系列 Java5的新特性 Java6的新特性 Java7的新特性 Java8的新特性 Java9的新特性 Java10的新特性 Java11的新特性 Java12的新特性 Java13的新特性 序 本文主要講述一下Java11的新...
前言 在若干次前的一場面試,面試官看我做過python爬蟲/后端 的工作,順帶問了我些后端相關的問題:你覺得什么是后端? 送命題。當時腦瓦特了,答曰:邏輯處理和數據增刪改查。。。 showImg(https://user-gold-cdn.xitu.io/2019/4/24/16a4ed4fc8c18078); 當場被懟得體無完膚,羞愧難當。事后再反思這問題,結合資料總結了一下。發現自己學過的Re...
閱讀 1459·2021-11-22 13:52
閱讀 1281·2021-09-29 09:34
閱讀 2690·2021-09-09 11:40
閱讀 3031·2019-08-30 15:54
閱讀 1255·2019-08-30 15:53
閱讀 971·2019-08-30 11:01
閱讀 1354·2019-08-29 17:22
閱讀 1943·2019-08-26 10:57