NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

Oracle 启动 Leyden 计划,下决心解决 Java 启动慢等长期痛点

  • 2022-05-21
  • 本文字数:885 字

    阅读完需:约 3 分钟

Oracle 启动 Leyden 计划,下决心解决 Java 启动慢等长期痛点

当地时间 5 月 20 日,Oracle Java 平台组首席架构师 Mark Reinhold 在其 Twitter 宣布正式启动莱顿计划(Project Leyden),该计划的最终目标是解决 Java 启动时间慢,达到峰值性能的时间慢以及占用空间大等长期痛点。


此消息让不少 Java 用户感到振奋。


好消息,终于来了!我们快开始吧!—— Roman Kennke @rkennke

我希望 CRaC 将成为 Leyden 的一部分。它看起来很有希望。—— Marc Savy @marcsavy

我猜 Quarkus 应用程序会从中受益。—— Vano Beridze @vanuatoo


据悉,2 年多前,Mark Reinhold 曾公开征集开发者对莱顿计划的想法(详见:Call for Discussion: New Project: Leyden),他建议通过向 Java 平台和 JDK 引入静态运行时映像的概念来解决以上痛点。


  • 静态映像是一个独立的程序,从一个应用程序和一个运行该应用程序的 JDK 派生出来的 ,而不是其他的。

  • 静态映像相对于它可以加载的类来说是一个封闭的世界:在运行时,它不能从映像外部加载类,也不能动态创建类。

 

封闭世界约束对 Java 的自然活力施加了严格的限制,尤其是对许多现有 Java 库和框架所依赖的运行时反射和类加载功能。并非所有应用程序都非常适合此约束,也不是所有开发人员都愿意接受它。

 

因此,与其在一开始就采用封闭世界的约束,Mark Reinhold 建议采取一种循序渐进的方法——探索一系列比封闭世界的约束更弱一些的约束,找出它们能够实现哪些优化。几乎可以肯定的是,由此产生的优化会比封闭世界约束所实现的优化弱。但是,正因为约束较弱,这些优化才有可能适用于更广泛的现有代码,那么,它们也将对更多开发人员更有用。

 

Mark Reinhold 表示,他们将沿着这些约束范围逐步工作,从小而简单的开始,以便能够深入了解 Java 平台规范所需的更改。当然,在此过程中,他们将努力保持 Java 的可读性、兼容性和通用性的核心价值。

 

他们将大量依赖 JDK 的现有组件,包括 HotSpot JVM、C2 编译器、应用程序类数据共享 (CDS) 和 jlink 连接工具。

 

“从长远来看,我们可能会接受完全封闭世界的约束,以产生完全静态的图像。但是,从现在到那时,我们将开发和提供渐进式改进,开发人员可以尽早使用。”Mark Reinhold 最后写道。

 

2022-05-21 02:285104

评论

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

架构实战营模块 4 作业

Roy

架构实战营

千万级学生管理系统考试试卷存储方案

地下地上

架构实战营

【PIMF】盘点开源鸿蒙第三方组件(第三方库)【2】

离北况归

OpenHarmony 三方库

架构实战营第四模块作业

Geek_53787a

Java Core 「12」ReentrantLock 再探析

Samson

学习笔记 Java core 6月月更

一个完整挖洞/src漏洞实战流程【渗透测试】

网络安全学海

黑客 网络安全 信息安全 渗透测试 漏洞挖掘

flutter系列之:flutter中常用的box

程序那些事

flutter 程序那些事 6月月更

leetcode 542. 01 Matrix 01 矩阵(中等)

okokabcd

LeetCode 动态规划 数据结构与算法

C语言中奇妙又有趣的符号——C语言运算(操作)符

未见花闻

6月月更

linux几个不常用但是很有用的命令

入门小站

Linux

千万级学生管理系统考试试卷存储方案

Pengfei

33岁程序员的年中总结

王磊

年中总结

又回到最初的起点,记忆中你青涩的脸,我们终于来到了这一天

百思不得小赵

阅读 毕业生 6月月更

千万级学生管理系统的考试试卷存储方案设计

Geek_7a789a

千万级学生管理系统试卷存储方案(架构实战营 模块四作业)

Gor

在线JSON转TSV工具

入门小站

工具

课程背景

IT蜗壳-Tango

6月月更

数据库每日一题---第17天:丢失信息的雇员

知心宝贝

数据库 前端 后端 6月月更

LabVIEW Arduino RS-485智能农业监测系统(项目篇—4)

不脱发的程序猿

传感器 智慧农业 LabVIEW Arduino RS-485智能农业监测系统

在线多行文本行转列工具

入门小站

工具

高效的代码版本控制,让你居家办公游刃有余 | 社区征文

代码托管 6月月更 初夏征文 协同开发

wapper解析

卢卡多多

6月月更

echo命令实用技巧

Nick

Docker 镜像源 echo 6月月更 tldr

攻防演练中红队的外网纵向突破口

穿过生命散发芬芳

6月月更 攻防演练

JVM调优简要思想及简单案例-JVM分代模型

zarmnosaj

6月月更

网页设计的发展趋势如何

源字节1号

基于Redis sentinel的千万级学生管理系统的考试试卷存储方案

Geek_e8bfe4

GetX 响应式状态管理简介

岛上码农

flutter ios 安卓 跨平台应用 6月月更

【LeetCode】兼具大小写的最好英文字母Java题解

Albert

LeetCode 6月月更

NodeJS Stream入门 🦺

德育处主任

node.js 6月月更

服务治理的目标与愿景

阿泽🧸

服务治理 6月月更

Oracle 启动 Leyden 计划,下决心解决 Java 启动慢等长期痛点_语言 & 开发_邓艳琴_InfoQ精选文章