企业级 Java 一直由两个参与者定义:一方面是 Spring,另一方面是 Java 企业版。Java EE 规范集是在 Oracle 的管理下在 Java Community Process 中开发的。当前的 Java EE 8 于 2017 年 9 月发布;之前的版本于 2013 年发布。
在这些版本之间,行业发生了很大变化,最显着的是容器、JSON 的普遍使用、HTTP/2 和微服务架构。不幸的是,Java EE 方面没有太多相关活动;但许多 Java EE 兼容服务器的用户要求采用这些新技术和范例。
因此,一群供应商和社区成员创立了 MicroProfile,以开发在微服务架构中使用 Java EE 的新规范,这些规范可以添加到未来版本的 Java EE 中。
MicroProfile 的 首次发布于 2016 年夏季,其中包括三个现有标准作为基准。2016 年底,MicroProfile 加入了 Eclipse 基金会(这解释了名称中“Eclipse”的由来),以利用 Eclipse 强大的治理和知识产权专业知识。
2017 年,又发布了两个版本,下一个版本即将到来。MicroProfile 旨在大约每三个月发布一次更新,以有时限的方式发布特定内容。发布包含一系列规范,每个规范都以自己的节奏开发,总括发布包含所有规范的当前版本。
盒子里有什么?
给我的爱人甜蜜,给我的蜂蜜加糖。
嗯,幸运的是不是,因为糖太多对你的健康有害。但各个规范确实有一些相当有吸引力的内容。新规范的开发在首次发布后开始。
构成 MicroProfile 1.2 的规范,于 2017 年 JavaOne 发布,包括:
- 指标: 处理遥测数据以及如何以统一的方式公开这些数据。这包括来自底层 Java 虚拟机的数据以及来自应用程序的数据。
- 健康状况: 报告服务是否健康。这对于像 Kubernetes 这样的调度器来说很重要,以确定是否应该终止应用程序(容器)并启动一个新的。
- 配置: 提供一种统一的方式将配置数据中继到应用程序中,而与配置源无关。
- 容错: 包括使微服务能够抵抗网络或其依赖的其他服务中的故障的机制,例如定义对远程服务的调用超时、在发生故障时重试策略以及设置回退方法。
- JWT 传播: JSON Web Token (JWT) 是一种基于令牌的身份验证/授权系统,允许基于安全令牌进行身份验证、授权和验证身份。JWT 传播定义了 JWT 与 Java EE 风格的基于角色的访问控制一起使用的互操作性和容器集成要求。
刚刚发布的 MicroProfile 1.3 包括对上述某些规范的更新,并添加了以下新规范:
- OpenTracing: 一种用于跨一系列微服务进行分布式调用跟踪的机制。
- OpenAPI: 一种记录数据模型和 REST API 的方法,以便机器可以读取它们,并从此文档中自动构建客户端代码。OpenAPI 源自 Swagger 规范。
- REST 客户端: 一种类型安全的 REST 客户端,它建立在标准的 JAX-RS 客户端之上,以完成更多繁重的工作,以便消费者代码可以依赖强类型数据和方法调用。
预计即将发布的版本将从 Java EE 8 中选取一些 API 和新的 API 版本,例如 JSON-B 1.0、JSON-P 1.1、CDI 2.0 和 JAX-RS 2.1。
在哪里可以了解更多?
- 一个好的起点是 Eclipse MicroProfile 网站,包括其博客、常见问题解答和其他信息。
- Eclipse 项目页面提供了项目及其治理的更技术性的概述,以及规范列表和存储库链接。
- Red Hat 开发者博客发布了许多关于 MicroProfile 的文章。
- 查看 2017 年 9 月 Eclipse 新闻通讯中关于 MicroProfile 的系列文章。
- 如果你想亲自尝试 MicroProfile,请获取像 WildFly Swarm 这样的服务器。
- 此外,我编写了一个小型 演示应用程序,它使用了 Metrics、Health 和 Config。
我如何参与?
主要的沟通渠道是 MicroProfile 讨论组。所有规范在 Eclipse 组织下都有一个 GitHub 存储库,因此它们正在使用 GitHub 问题和拉取请求。此外,每个规范通常都有一个 Gitter 讨论组。
如果你对新的 MicroProfile 规范有想法,请加入讨论组,提出你的想法并开始编写代码。一旦其他人支持你的想法,将创建一个新的存储库,更正式的流程就可以开始。
评论已关闭。