2025上半年,最新 AI实践都在这!20+ 应用案例,任听一场议题就值回票价 了解详情
写点什么

原生编译加速 Java | InfoQ 专题

作者:Karsten Silz

  • 2022-07-08
  • 本文字数:1143 字

    阅读完需:约 4 分钟

原生编译加速Java | InfoQ专题

Java 主导着企业级应用。但在云计算领域,采用 Java 的成本比它的一些竞争对手更高。原生编译降低了在云端采用 Java 的成本:用它创建的应用程序启动速度更快,使用的内存更少。


那么,Java 用户的问题来了:原生 Java 是如何改变开发方式的?我们在什么情况下应该切换到原生 Java?什么情况下又不应该切换?我们应该使用什么框架?本系列文章将回答这些问题。


1. Java革新之路:GraalVM原生镜像


GraalVM 原生镜像是一种预先编译器,它可以生成原生 Java 可执行文件。这些可执行文件启动非常快,使用更少的 CPU 和内存。这降低了在云端使用 Java 的成本。GraalVM 甚至可以达到与 JVM 相当的峰值吞吐量。许多 Java 框架已经支持 GraalVM,如 Spring Boot、Micronaut、Quarkus、Gluon 等。


作者:Alina Yurenko


2. 为 Java 提速:用 Quarkus 开发 Kubernetes Native Java 应用


在原生和基于 JVM 的 Java 应用程序的启动时间和内存利用率方面,Quarkus 都是业界的佼佼者。它降低了云计算的采用成本。在 Quarkus 中,Kubernetes 是一等部署平台,Kubernetes 的原语和特性都得到了良好支持。开发者可以继续使用他们已掌握的 Java API 知识,如 Jakarta EE、MicroProfile、Spring 等。应用程序可以是命令式的,也可以是响应式的,或者两者兼而有之!


作者:Jason GreeneJohn ClinganEric Deandrea


3. 现实世界中的原生 Java


部署在 Kubernetes 上的微服务是原生 Java 的一个绝佳应用场景:它们有很多框架和 Java 运行时。原生 Java 的构建、调试、测试、部署和配置需要更多的工作量。应用程序框架应该在生产环境中完全支持原生 Java。原生 Java 的采用可以是渐进式的,但原生 Java 应用程序只有在所有库都支持原生 Java 的情况下才能工作。


作者:KimJohn QuinnRakesh RajaJason Moehlman


4. Java 云原生之路:Micronaut 框架


Micronaut 框架为构建云原生 Java 微服务提供了坚实的基础。它减少了对 Java 反射、运行时代理生成和动态类加载的使用。与 GraalVM 提前编译(AOT)的紧密集成可见 Micronaut 框架采用量的增长。编译时检查增加了类型安全并提高了开发人员的开发效率。


作者:Graeme Rocher


5. 借助 Spring Boot 和 GraalVM 实现原生 Java


将于 2022 年底推出的 Spring Boot 3 和 Spring Framework 6 将内置对原生 Java 的支持。对于 Spring Framework 5.x 和 Spring Boot 2.x 来说,Spring Native 是可行之道。Spring Native 为 Spring 庞大的库生态系统提供了集成能力。它还提供了一个组件模型,支持对其他库进行原生编译。


作者:Josh Long


6. 标准化原生 Java:拉近 GraalVM 和 OpenJDK 的距离


原生 Java 对于 Java 在不断演进的云世界中保持相关性至关重要。原生 Java 还有待完善。开发生命周期也需要做出调整。通过 Leyden 来实现标准化是原生 Java 取得成功的关键。OpenJDK 需要引入原生 Java,以便与其他增强功能共同演进。


作者:Andrew DinnDan Heidinga

2022-07-08 09:175667

评论

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

可以拯救陈年老视频的Topaz Video AI

展初云

Mac软件 视频修复工具

基于火山引擎云搜索服务的排序学习实战

字节跳动云原生计算

大数据 搜索引擎 云原生

官宣|2023开放原子开发者大会来了!

开放原子开源基金会

【稳定性】稳定性建设之弹性设计 | 京东物流技术团队

京东科技开发者

系统稳定性 限流算法 企业号10月PK榜 弹性设计

监控分析工具比较 (Zipkin, Skywalking, Pinpoint, CAT)

周晓宁

Spring扩展-自定义标签

Mac平台的视频编辑和调色软件 DaVinci Resolve Studio 18

展初云

Mac软件 视频编辑 达芬奇18

HBase入门指南

Java随想录

Java 大数据 habse

数划云受邀参与2023甄云用户大会,分享数据驱动经营新经济企业业财一体新路径

数划云

MySQL分区表详解

Java随想录

Java MySQL

央国企数字化转型的破局者:低代码引领变革,高效应对未来挑战

优秀

低代码 数字化转型 央国企数字化转型

软件测试/测试开发丨利用ChatGPT 生成自动化测试脚本

测试人

人工智能 程序员 软件测试 测试开发 ChatGPT

数字赋能,联通未来——数划云亮相“2023创源工业互联网创新大赛暨优秀项目路演”

数划云

Redis中的Big Key问题:排查与解决思路

Java随想录

Java redis

Spark入门指南:从基础概念到实践应用全解析

Java随想录

Java 大数据 spark

DAPP钱包单币丨多币丨LP质押挖矿系统开发

l8l259l3365

OpenTiny 系列产品 TinyEngine 低代码引擎在 HC 大会正式宣布开源~(源码已开放)

OpenTiny社区

开源 前端 低代码

深度学习算法:从模仿到创造

小魏写代码

飞桨大模型套件:一站式体验,性能极致,生态兼容

飞桨PaddlePaddle

nlp 大模型 套件 大语言模型

关系数据库:定义、模型、排名

Frank

关系型数据库

与客户携手共进|博睿数据客户最佳实践精选

博睿数据

可观测性

ICCV 2023 | 当尺度感知调制遇上Transformer,会碰撞出怎样的火花?

阿里云大数据AI技术

人工智能

开放原子开源大赛 | OpenAnolis赛题正式启动,诚邀报名!

开放原子开源基金会

全场景流量验证系统 | 京东物流技术团队

京东科技开发者

系统设计 测试 企业号10月PK榜 流量验证

Scala语言入门:初学者的基础语法指南

Java随想录

Java scala 大数据

原生编译加速Java | InfoQ专题_云原生_InfoQ精选文章