WildFly 32 提供 Jakarta EE 11 预览版及 WildFly Glow 最终版本

WildFly 32 版本发布及 WildFly Glow 工具

WildFly 团队发布了 WildFly 32 版本,并将 WildFly Glow 工具提升为正式版,同时提供了 Jakarta EE 11 的预览支持。WildFly Glow 是一套工具,用于分析应用程序构件(如 WAR 文件),确定构件所使用的 WildFly 依赖项,并建议使用 WildFly 运行时打包应用程序的正确层。

WildFly Glow 的主要功能

WildFly Glow 旨在通过运行时自动化、打包和安装,解决单体应用服务器中的常见挑战。它包含以下组件:

  • 命令行界面 (CLI)
  • Maven 插件
  • Arquillian 插件

WildFly Glow 分析编译后的 Java 代码(如 WAR 文件),确定运行应用程序所需的 WildFly 组件(如 Feature PacksGalleon 层),并根据代码使用情况提供建议,例如是否需要包含 SSL、特定数据库驱动、消息连接器(Jakarta Messaging 或 Reactive)或 WildFly HA(高可用性)配置文件等。

WildFly Glow 的优势

与 Galleon 相比,WildFly Glow 在磁盘使用上减少了 5% 到 55%,在内存消耗上减少了 5% 到 32%。这使得 WildFly 应用服务器的使用更加高效,能够构建仅包含所需依赖项和功能的定制化服务器。

WildFly Glow CLI 命令示例

WildFly Glow CLI 提供了多种命令来生成不同的输出:

  1. wildfly-glow scan target/frdemo.war:扫描 WAR 文件以查找其内容。
  2. wildfly-glow scan target/frdemo.war --ha:扫描 WAR 文件并创建 HA 运行时。
  3. wildfly-glow scan target/frdemo.war --provision BOOTABLE_JAR:扫描并生成可启动的 JAR 文件。
  4. wildfly-glow scan target/frdemo.war --provision DOCKER_IMAGE:扫描并生成应用程序的 Docker 镜像。
  5. wildfly-glow scan examples/kitchensink.war --cloud --provision OPENSHIFT:扫描并生成部署到 OpenShift 集群的云构建。

应用示例

一个使用 Kafka(MicroProfile Reactive Messaging 规范)、PostgreSQL 数据库、Jakarta Persistence 规范和 Jakarta EE Core Profile 的应用程序可以通过以下命令生成 Docker 镜像:

./wildfly-glow scan first-responder-demo/backend/target/frdemo-backend.war --add-ons=postgresql --cloud --provision DOCKER_IMAGE

该命令生成的 Docker 镜像可以在任何 Kubernetes 平台上运行。

Maven 插件

WildFly Glow 还发布了 Maven 插件,特别适用于与 Arquillian(Java 应用的测试平台)集成。该插件自动化了配置过程,使测试环境的准备更加便捷。

WildFly 32 的其他特性

  • 特性稳定性级别:WildFly 32 扩展了 WildFly 31 中引入的特性稳定性级别,将特性分为实验性、预览、社区或默认级别,帮助用户根据特性的稳定性和准备情况管理风险。
  • 支持规范:WildFly 32 支持 Jakarta EE 10 和 MicroProfile 6.1 规范,运行在 JDK 11 和 17 上,并推荐使用 JDK 21 以获得最佳性能和特性支持。
  • 预览特性:WildFly 32 增加了 Jakarta EE 11 的预览特性,计划在 WildFly 34 中提供完全支持。

更多详细信息可参考 WildFly 的博客文章发布说明

阅读 30
0 条评论