写点什么

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:285877

评论

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

应用部署引起上游服务抖动问题分析及优化实践方案

京东科技开发者

应用部署 jsf 企业号 4 月 PK 榜 上游服务抖动

从零学习SDK(6)调试和测试SDK的库

MobTech袤博科技

华秋PCB生产工艺 | 第十二道主流程之FQC

华秋电子

华为19级大佬10年心血终成百页负载均衡高并发网关设计实战文档

Java 负载均衡 高并发 网关设计

高可靠多层板制造服务再获认可!华秋荣获创想三维优秀质量奖

华秋电子

SLBR通过自校准的定位和背景细化来去除可见的水印

合合技术团队

人工智能 图像处理 水印消除

华秋干货分享:SMT钢网文件的DFA(可焊性)设计

华秋电子

GitHub上疯传数万次!蚂蚁内部绝密分布式高可用算法笔记太香了

Java 分布式 高可用 算法

面对“失业焦虑”我们可以尝试自媒体分享| 社区征文

浅羽技术

三周年征文

文盘Rust -- 用Tokio实现简易任务池

京东科技开发者

rust runtime tokio 企业号 4 月 PK 榜

OpenHarmony社区运营报告(2023年3月)

OpenHarmony开发者

OpenHarmony

低成本,全流程!基于PaddleDepth和Paddle3D的三维视觉技术应用方案

飞桨PaddlePaddle

人工智能 飞桨 PaddlePaddle 三维视觉

厚礼蟹!阿里最新SpringBoot核心笔记,一夜爆火于Github。

Java你猿哥

Java Spring Boot JAVA开发 SSM框架

300+页!卷王级别Java面试宝典-阿里服务端开发与面试知识手册!

Java你猿哥

Java spring JVM 面经 SSM框架

如何在ABAP里用函数式编程思想打印出非波拉契Fibonacci(数列)

汪子熙

SAP abap Netweaver 思爱普 三周年连更

揭开“虚拟化已死”的5大谎言与真相

科技热闻

BAT必刷!GitHub顶级“2023并发编程全优笔记”晋升公司架构组!

Java你猿哥

Java 多线程 面经 SSM框架 多线程并发

得帆云DeMDM,业内首家基于低代码技术构建的主数据管理平台

得帆信息

低代码 数据治理 数据清洗 主数据管理 主数据管理平台

【4.7-4.14】写作社区优秀技术博文一览

InfoQ写作社区官方

热门活动 优质创作周报

太强了!阿里技术官新产"Spring高级源码阅读指南",爆火全网

Java你猿哥

Java spring SSM框架 spring ioc spring aoc

SpringBoot 集成 atomikos 实现分布式事务

活久见,java8 lamdba Collectors.toMap()报NPE

总结一下Redis的缓存雪崩、缓存击穿、缓存穿透

后端开挂!一个接口实现CRUD操作,这款工具绝了!

Java你猿哥

Java 接口 后端 crud

被裁后,狂刷大牛分享的607页JUC源码分析笔记,立马拿蚂蚁offer

Java 高并发 JUC JCF 集合框架

【问题解决】解决 swagger2 默认地址失效

Java你猿哥

Java JAVA开发 swagger2 java项目

爆肝一月!527页文档详解SpringCloud微服务和分布式系统实践

小小怪下士

Java 分布式 微服务 后端 SpringCloud

人人自媒体的时代,程序员该如何利用好自己的优势?我记住了这些神器...

浅羽技术

工具 自媒体 写作技巧 三周年连更

业内首份!医疗数据安全政策汇编发布(附下载)

极盾科技

数据安全

EMQX Cloud BYOC版本发布:在您的云上体验全托管的MQTT消息服务

EMQ映云科技

物联网 IoT 云服务 mqtt 企业号 4 月 PK 榜

Java中的异常处理详解(try、catch、finally、throw、throws) | 社区征文

共饮一杯无

Java 异常处理 三周年连更

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