Payara 基金会最近发布了 5.183 版 Payara Server 和 Payara Micro ,其中包含大量新功能、升级和Bug 修复,并开始全面支持 MicroProfile 2.0 和 Java EE 8。该版本提供的新功能包括:有关 MicroProfile API 和 Admin Console 的更新,针对 OpenID 规范的支持,以及一套全新的应用程序部署描述符架构。
最初诞生于 2014 年的 Payara 原本基于开源版本的 GlassFish 4.1,后者当时由 Oracle 负责维护。Payara 始终致力于通过维持开源,小巧 / 简单 / 强大,并兼容各大主流云平台,借此为用户提供一流支持。
2017 年引入的 Payara发布流定义了面向用户的发布计划;所有Payara 用户均可加入的社区流是一种每季度发布一次的计划,其中包含大量新功能、更新和Bug 修复。此外Payara 用户还可选择功能流,每个月该计划会针对每季度发布一次的版本提供补丁;此外还可选择稳定流,该计划的补丁发布更频繁,可进一步改善稳定性和一致性。
Payara 5.183 是 2018 年第三季度发布的最新版。今年初,Payara 创始人兼总监 Steve Milledge 曾经讨论过Payara 的2018 开发计划,当时他提出5.183 版将主要侧重于反应式和异步编程,尤其是:
计划于八月底发布的 183 版将侧重于扩展对反应式和异步编程的支持。当时的计划包括:
- 确保 Java EE API 可通过 Lambdas、Completable Futures、Collections 并行流操作使用。
- 支持使用 Lambdas 作为消息监听器。
- 支持使用 CDI bean 作为消息监听器。
- 通过@Asynch
、@Pooled
、@ClusterScoped
和@ServerScoped
增强对 CDI 的支持。
- 可部署的并发资源
此外 5.183 版还将以 MicroProfile 2.0 为目标,不过取决于 MicroProfile 项目的进展,这一点可能会提前实现。
MicroProfile 更新
为了符合 MicroProfile 2.0 规范,Payara 更新了现有的 API OpenAPI 和 REST Client 实现,并针对 API Fault Tolerance 、 Config 、 Open Tracing 和 JWT-Auth 提供了新的实现。
Fault Tolerance 1.1
更新后的 Fault Tolerance 已可与 Metrics 和 Config API 集成。通过收集并暴露多个 Metric,可提供更丰富的信息,如具体执行了@FaultTolerance
注解所封装的哪些方法,任何已触发断路器的状态,重试次数,失败次数等。此外,还可以使用特殊配置的键格式将参数提供给@FaultTolerance
注解、类或方法。
Config 1.3
为了补全URL
类,Payara 引入了一种能将字符串转换为URI
类,或任何包含可接受字符串构造的其他类的新方法,借此增加对URI
类的支持。借此配置值将可以转换为使用字符串构造的任何类。
此外还新增了一种映射规则,借此可以更容易地将包含下划线的环境变量转换为配置键。
Open Tracing 1.1
Open Tracing 1.1 现在已经符合最新的 Open Tracing 规范,借此可供 Java API 收集跟踪信息。此外还提供了标签,可用于标记跟踪具体是由哪些组件提供的。
JWT-Auth 1.1
更新后的 JWT-Auth 已经可与 Config 集成。在 Payara 早期最初的实现中,虽然可支持 JWT-Auth 公钥,但无法移植。通过使用 Config,公钥已经可以指定为包含公钥的内容,或包含有关公钥位置的信息。
REST Client 1.1
REST Client 最早是在 5.182 版中实现的,更新后已经开始对 REST 服务的调用提供异步支持。现在,它已经可以通过创建方法返回 CompletionStage 实例,并被其他线程以异步的方式跟踪。
为了完善URL
类,Payara 还开始支持在注入RestClient
接口时,使用 Config 将URI
类的实例设置为参数。与应用程序特定的 URI/URL 可指定为microprofile-config.properties
文件中的配置键,如下所示:
org.redlich.payara.RestClientApp/mp-rest/url=http://localhost:8080/restapp
Admin Console
有关 Payara Server 管理控制台的改进主要是针对每个服务器实例提供了新增的 MicroProfile 设置页面。如下图所示,不同 MicroProfile API 现在具备了多种属性设置。
此外根据用户反馈,原本无序排列的服务器配置选项列,现在也开始按照字母顺序排序。
OpenID Connect
随着 5.182 版开始支持 OAuth 2.0 协议,Payara 的 5.183 版已经可以支持 OpenID Connect ,这是一种基于 OAuth 的安全机制。OpenID Connect 实现了 OpenID 规范,但正如 OpenID Connect文档中所述:
OpenID Connect 会执行很多与 OpenID 2.0 相同的任务,但具体的执行方式对 API 而言更友好,可被原生和移动应用所使用。为了提升登录和加密的健壮性,OpenID Connect 定义了一套更优化的机制。虽然 OAuth 1.0a 与 OpenID 2.0 的集成需要使用扩展,但对 OpenID Connect 而言,OAuth 2.0 的相关能力已经集成于协议本身了。
查看英文原文: Payara Foundation Releases Payara Server and Payara Micro 5.183 Featuring MicroProfile 2.0 Support
评论