一文读懂 Jakarta EE 10 的云原生时代

简介: Hello folks,我是 Luga,今天我们来分享一下与 Java 有关的云原生话题,即 Jakarta EE 10 平台的发布,带领 Java 迈向云原生时代。

  Hello folks,我是 Luga,今天我们来分享一下与 Java 有关的云原生话题,即 Jakarta EE 10 平台的发布,带领 Java 迈向云原生时代。

    众所周知,Go 、Rust 语言已经成为云原生的主导开发语言,虽然 Rust 在市场范围内不及 Go,但其也在努力地扩展自己的市场地位。作为云原生生态的幸运宠儿,云原生架构中大概 63% 的具有核心竞争力的云原生项目基本上都是基于 Go 来构建,因此,足以证明其牛逼的地位。

    此时,Where is Java ?

01

背景概述


    在探讨 Jakarta EE 10 当下与未来发展时Eclipse 基金会 Jakarta EE 工作组发布 Jakarta EE 10 迎接云原生 Java 时代,即预示着 Java 也要分一杯云原生时代的“羹”。

    根据 Eclipse 基金会执行董事 Mike Milinkovich 所述,Jakarta EE 10 是在现代微服务和容器时代牢牢嵌入 Jakarta EE 的“终极里程碑版本”,引入了用于构建现代、简化和轻量级云原生 Java 应用程序的功能。Jakarta EE 10 的发布反映了全球贡献者社区的工作战绩,基于此版本,使得 Java 在云原生时代带来了关键创新,奠定了其云原生生态地位,这对我们行业的未来至关重要。

    据发布的一项关于 2022 年 Jakarta EE 开发人员调查的报告,其结果显示了 Java 企业标准在新的云原生应用程序和微服务开发中的使用越来越多。2022 年 3 月 9 日至 5 月 6 日期间,共有来自世界各地的 1,439 名 Java 开发人员做出了回应,其中 53% 表示他们使用 Jakarta EE 作为其云原生应用程序开发框架的基础。

    虽然与 2021 年相比,Jakarta EE 的使用量增加了 6%,但 Spring/Spring Boot、MicroProfile 和 Micronaut 等其他框架的使用量略有下降。然而,Spring/Spring Boot 仍然是最流行的 Java 企业框架,占所有提及的 57%。根据官方报告,Spring Boot 与 Jakarta EE 没有竞争力,因为它依赖 Jakarta EE 开发,两者都是健康的企业 Java 生态系统的重要组成部分。

    其实,从本质上来讲,在这个激烈的市场竞争中,尤其是云原生时代的生态环境下,面对 Go、Rust 等语言 2 大高手,Jakarta EE 可能心里面很迫切地希望能够抢回属于自己的那一份。基于云原生生态中最火热的容器化技术的蓬勃发展,因此,与 Kubernetes 容器编排平台的本地集成以及更好地支持微服务或许是其发展规划中的首要核心任务。然而,虽然去年调查参与者仍然希望加快创新步伐,但现在的重点是现有云平台和 Java EE/Jakarta EE 供应商更快地提供支持,以便获得市场份额。

02

Jakarta EE 10 功能特性


    诚然,Jakarta EE 10 给自己的定位是开放的、社区驱动的创新以及推动云原生 Java 技术的未来。光吹牛逼压根没有卵用,那么,它到底具备哪些硬核呢?接下来,我们来了解一下 Jakarta EE 10 的特征与优势,具体如下所示。

    正如上文所述,Jakarta EE 10 主要包含用于构建现代化、简化和轻量级云原生 Java 应用程序的新功能。这个新的创新社区驱动版本专为希望开始开发新的企业 Java 应用程序或改进其现有应用程序的组织而设计。

    1、现代化

    Jakarta EE 10 版本在 20 多个组件规范中提供了新功能。

    此版本能够使现代云原生 Java 应用程序的构建者能够在 Java SE 11 和 Java SE 17(Java SE 的最新 LTS 版本)上开发和部署 Jakarta EE 10 应用程序。这允许开发人员充分利用新功能,包括 Java SE 9 中引入并在 Java SE 11 中支持的模块化系统等。

    2、简单化

    基于 Jakarta EE 10,通过支持更广泛地使用附加注释,使得应用程序开发变得更为简单、高效。

    这使得构建模块化应用程序变得更加容易,并提供了跨组件 API 的改进集成。最终,Jakarta EE 10 可帮助开发人员更轻松地实施具有现代安全要求的应用程序,剔除已弃用的 API,并保持与之前 Jakarta EE 版本的高度兼容性。

    3、轻量级

    Jakarta EE 10 基于 Jakarta EE 核心配置文件定义了一个新的配置文件规范。“核心配置文件”为现代化的轻量级 Java 应用程序和微服务定义了一个多供应商平台。

    新的 Core Profile 提供了 Jakarta EE 规范的一个子集,其目标是适用于具有轻量级运行时的微服务开发的较小运行时。这包括用于构建轻量级 Jakarta EE 应用程序的创新的新 CDI-Lite 规范。

03

Jakarta EE 10 规格


    Jakarta EE 10 生态规格如下所示:

(图片源自官网)

    Jakarta EE 10 在 20 多个规范中提供了值得注意的 API 升级,并添加了全球社区用户所期望的核心功能。所涉及的优化及改进如下所示:

    1、Jakarta 上下文和依赖注入 (CDI) 4.0,包括支持构建时间扩展的 CDI-Lite;

    2、支持 OpenID Connect 的 Jakarta Security 3.0;

    3、Jakarta Servlet 6.0 用于简化编程和提高安全性;

    4、Jakarta Faces (JSF) 4.0 具备使用 CDI 的现代化 API;

    5、Jakarta JSON Binding (JSON-B) 3.0 新增了对多态类型的支持;

   6、Jakarta RESTful Web 服务标准化了 Java SE Bootstrap API 和对 multipart/form-data 的标准支持;

    7、Jakarta Persistence 将 UUID 标准化为基本类型并扩展查询语言和查询 API;

    8、Jakarta Concurrency 3.0 移至 Web Profile 并增强了应用程序可用的并行和反应式编程模型;

   除此之外,构建现代化云原生 Java 应用程序方面,Jakarta EE 10 版本能够:

    1、在 Java SE 11 和 Java SE 17(Java SE 的最新 LTS 版本)上开发和部署 Jakarta EE 10 应用程序;

    2、利用 Java SE 9 中引入并在 Java SE 11 中支持的模块系统等新功能此版本通过支持更广泛地使用附加注释来简化应用程序开发。这使得构建模块化应用程序变得更加容易,并提供了跨组件 API 的改进集成。

    最终,此版本可帮助开发人员更轻松地实现具有现代安全要求的应用程序并删除已弃用的 API,同时还保持与之前 Jakarta EE 版本的高度兼容性。

    除了这些增强功能之外,还有越来越多的兼容产品列表来支持本已丰富的生态系统。例如,Eclipse GlassFish 7、Open Liberty、22.0.0.10-beta 和 Wild Fly 27.0.0 今天都在提供兼容版本。富士通、IBM、甲骨文、Payara、Red Hat 和 Tomitribe 等 Jakarta EE 工作组的成员正在努力认证 Jakarta EE 10 兼容产品。一旦该版本可用,Jakarta EE 10 兼容实和产品的列表预计将迅速增长,从而奠定其云原生时代的市场地位。

    Jakarta EE 10 的发布是其作为云原生 Java 创新平台发展的重大飞跃,真诚地期望 Jakarta EE 在云原生时代能够发挥其关键作用,引领整个生态稳步前行。关于 Jakarta EE 更多需要了解的信息,可查阅其官网 https://jakarta.ee/

    关于 Jakarta EE 10 相关内容,本文解析到此为止,希望对大家有用。关于更多需要了解的信息,欢迎大家交流、关注!

    Adiós !

相关文章
|
消息中间件 Cloud Native 安全
Jakarta EE 10发布,开启云原生Java时代
Jakarta EE 10发布,开启云原生Java时代
Jakarta EE 10发布,开启云原生Java时代
|
19天前
|
运维 Cloud Native 持续交付
深入理解云原生架构及其在现代企业中的应用
随着数字化转型的浪潮席卷全球,企业正面临着前所未有的挑战与机遇。云计算技术的迅猛发展,特别是云原生架构的兴起,正在重塑企业的IT基础设施和软件开发模式。本文将深入探讨云原生的核心概念、关键技术以及如何在企业中实施云原生策略,以实现更高效的资源利用和更快的市场响应速度。通过分析云原生架构的优势和面临的挑战,我们将揭示它如何助力企业在激烈的市场竞争中保持领先地位。
|
17天前
|
Kubernetes Cloud Native 微服务
探索云原生技术:容器化与微服务架构的融合之旅
本文将带领读者深入了解云原生技术的核心概念,特别是容器化和微服务架构如何相辅相成,共同构建现代软件系统。我们将通过实际代码示例,探讨如何在云平台上部署和管理微服务,以及如何使用容器编排工具来自动化这一过程。文章旨在为开发者和技术决策者提供实用的指导,帮助他们在云原生时代中更好地设计、部署和维护应用。
|
27天前
|
Cloud Native Devops 云计算
云计算的未来:云原生架构与微服务的革命####
【10月更文挑战第21天】 随着企业数字化转型的加速,云原生技术正迅速成为IT行业的新宠。本文深入探讨了云原生架构的核心理念、关键技术如容器化和微服务的优势,以及如何通过这些技术实现高效、灵活且可扩展的现代应用开发。我们将揭示云原生如何重塑软件开发流程,提升业务敏捷性,并探索其对企业IT架构的深远影响。 ####
42 3
|
28天前
|
Cloud Native 持续交付 云计算
云原生架构的演进与挑战
随着云计算技术的不断发展,云原生架构已成为企业数字化转型的重要支撑。本文深入探讨了云原生架构的概念、发展历程、核心技术以及面临的挑战,旨在为读者提供一个全面了解云原生架构的视角。通过分析Kubernetes、Docker等关键技术的应用,以及微服务、持续集成/持续部署(CI/CD)等实践案例,本文揭示了云原生架构在提高应用开发效率、降低运维成本、增强系统可扩展性等方面的显著优势。同时,也指出了云原生架构在安全性、复杂性管理等方面所面临的挑战,并提出了相应的解决策略。
|
17天前
|
运维 Cloud Native 持续交付
云原生技术深度探索:重塑现代IT架构的无形之力####
本文深入剖析了云原生技术的核心概念、关键技术组件及其对现代IT架构变革的深远影响。通过实例解析,揭示云原生如何促进企业实现敏捷开发、弹性伸缩与成本优化,为数字化转型提供强有力的技术支撑。不同于传统综述,本摘要直接聚焦于云原生技术的价值本质,旨在为读者构建一个宏观且具体的技术蓝图。 ####
|
20天前
|
弹性计算 运维 Cloud Native
云原生架构的崛起与未来展望
在数字化转型的浪潮中,云原生架构凭借其高效、灵活和可扩展的特性,正逐渐成为企业IT战略的核心。本文旨在探讨云原生架构的定义、关键特性、实施优势以及面临的挑战,同时展望未来的发展趋势。通过深入分析,我们期望为读者提供一个关于云原生架构全面而深入的视角,助力企业在云计算时代做出更明智的决策。
31 3
|
21天前
|
Cloud Native API 持续交付
云原生时代的微服务架构设计
随着云计算的蓬勃发展,云原生概念逐渐成为IT行业的热点。本文将通过深入浅出的方式,介绍在云原生环境下,如何设计一个高效、可扩展的微服务架构。文章不仅涉及理论概念,还将结合实际代码示例,帮助读者理解微服务架构的核心要素和设计原则,以及如何在云平台上实现这些设计。
|
29天前
|
Kubernetes Cloud Native Docker
云原生之旅:从传统架构到容器化服务的演变
随着技术的快速发展,云计算已经从简单的虚拟化服务演进到了更加灵活和高效的云原生时代。本文将带你了解云原生的概念、优势以及如何通过容器化技术实现应用的快速部署和扩展。我们将以一个简单的Python Web应用为例,展示如何利用Docker容器进行打包和部署,进而探索Kubernetes如何管理这些容器,确保服务的高可用性和弹性伸缩。
|
24天前
|
Cloud Native 持续交付 云计算
云原生技术在现代IT架构中的转型力量####
本文深入剖析了云原生技术的精髓,探讨其在现代IT架构转型中的关键作用与实践路径。通过具体案例分析,展示了云原生如何赋能企业实现更高效的资源利用、更快的迭代速度以及更强的系统稳定性,为读者提供了一套可借鉴的实施框架与策略。 ####
24 0