RedHat推出Mandrel:使Java本地化

2020 年 7 月 06 日

RedHat推出Mandrel:使Java本地化

RedHat 推出了一个新的 Java 发行版,Mandrel,它可以直接将 Java 应用程序编译成本机代码,从而可以在较低的内存中更快地启动。


Mandrel 是一个基于 Oracle 的GraalVM,由社区支持的额外的构建,两者只是略有不同。RedHat 的高级工程总监 Mark Little 解释说:“最好将 Mandrel 描述成一个特别封装了 GraalVM 原生镜像的常规 OpenJDK 的发行版。”RedHat 推出 Mandrel 背后的主要驱动因素是通过其“超音速亚原子 Java”来驱动 Quarkus 框架的速度和效率。Quarkus 是一个为云供应商提供快速重载本地开发以及容器化或无服务器分发的框架。自 2019 年首次推出以来,Quarkus一直强调其可以构建启动速度更快、云运营成本和资源更低的本地可执行文件的能力


GraalVM 的负责人 Thomas Wuerthinger,在回应Mandrel发布时说:“感谢 @maxandersen 和同事们积极参与 @graalvmcommunity!”


Andres Dinn 在 Quarkus Insights 系列视频的第 7 集中解释了GraalVM和Mandrel的作用。该视频介绍了用法以及各种技术细节,并提出了一些问题,比如即时编译和提前编译之间的区别。 Dinn 解释了它们各自的优点和缺点以及最适合使用它们的地方。


Mandrel的GitHub仓库是 GraalVM 的一个分支,但它尚未提供二进制发行版本。但是用户可以按照提供的说明自行编译 JDK。


在性能基准测试方面,GraalVM的启动时间快了50倍,内存使用减少了5倍。测试是针对 Java 的 HotSpot 模式使用 Quarkus 框架的早期版本完成的。虽然这一改进需要额外的提前编译时间,但它可以与 Quarkus 的原生LambdaAzure函数部署一起使用。


James Ward 还提供了其他更多的技巧和窍门,他已经用本机编译的形式对多个框架进行了基准测试。Ward 介绍了性能改进的好处以及一些难题,比如依赖反射的应用程序。”这给 GraalVM 原生镜像带来了问题,因为反射是在运行时发生的,这使得 AOT 编译器很难找出执行路径。“ Quarkus的主页直接受益于此:RAM 从 73MB 降到 12MB(降低了 83%),首次响应时间从 0.943 降为 0.016 秒(降低了 98%)。


开发人员现在可以在自己的构建中使用 Mandrel,或者利用 GraalVM 社区版或任何 JDK 11+发行版。感兴趣的开发人员也可以使用这些工具来参加Quarkus黑客马拉松


原文链接:


https://www.infoq.com/news/2020/07/mandrel-graalvm/


2020 年 7 月 06 日 14:052508

评论

发布
暂无评论
发现更多内容

双亲委派模型与 Flink 的类加载策略

Apache Flink

flink

10个常见的软件架构模式

GuoYaxiang

架构模式 软件架构 架构设计

极客大学架构师训练营 - 同城快递业务架构设计 - 大作业一

叶鹏

深入分析CRM系统对现代企业的作用

Philips

企业管理 CRM 客户关系管理

10周作业-微服务

飞雪

Week04

SuperLab

聊聊布隆过滤器

海星

99%的人都能看懂的分布式系统「补偿」机制

华为云开发者社区

分布式 高可用 系统

Git:改变世界的一次代码提交

华为云开发者社区

git Linux 代码

网上黑平台系统风控不能出款怎么办

其实很简单

大数据 网络 系统检测

flutter之踩坑的日子(3)

霜蓝手环

Flutter Android Apk

网易伏羲问鼎全球AI文创大赛:用户可零门槛生产音视频动画

核桃Eason

人工智能 AI 动画 网易

学习Java的三个阶段(学习目标+知识点),一起努力吧!

Java架构师迁哥

Java经典面试题详解,突围金九银十面试季(附详细答案)

Java架构师迁哥

架构师训练营第一期-第二周课后-作业二

极客大学架构师训练营

小前端探索HTTP

Lam

Java 面试 前端 网络 HTTP

Week06总结

SuperLab

Week07总结

SuperLab

免费CA证书安装配置与背后原理浅析

陈德伟

极客大学架构师训练营-架构师技术图谱-大作业二

叶鹏

你的页面健康吗?

Lam

Java 前端 浏览器 性能分析 web前端

滴滴开源AgileTC:敏捷测试用例管理平台

滴滴技术

开源项目 滴滴技术 滴滴开源

LeetCode题解:83. 删除排序链表中的重复元素,递归,JavaScript,详细注释

Lee Chen

LeetCode 前端进阶训练营

架构师 0 期 | 大数据相关技术

刁架构

架构师训练

Week02

SuperLab

Week05 总结

SuperLab

英特尔重磅发布物联网增强处理器,产品性能、AI能力、功能安全提升显著

intel001

线上医疗未来的发展

anyRTC开发者

ios 音视频 WebRTC RTC 安卓

iOS造轮子 - UITableView字母索引条

iOSer

ios 面试题 UITableView iOS面试

week03

SuperLab

LeetCode题解:83. 删除排序链表中的重复元素,迭代,JavaScript,详细注释

Lee Chen

LeetCode 前端进阶训练营

RedHat推出Mandrel:使Java本地化-InfoQ