Red Hat 发布 WildFly Application Server 10.1 版

阅读数:703 2016 年 10 月 10 日

话题:JavaDevOps语言 & 开发架构

Red Hat最近发布了10.1 版 WildFly 应用程序服务器,该版本新增了如下重要功能:

  • 完整的 HTTP/2 支持
  • 自动生成 TLS 证书
  • 改进的负载平衡能力
  • 支持Azure集群节点的发现
  • 数个瑕疵修复

WildFly 现已能够为 HTTP/2 提供“拆箱即用”的完整支持。WildFly 的新闻稿中对此介绍如下:

WildFly 的独特之处在于,无须任何特殊的 JVM 标志(哪怕在 Java 8 中!),无须更改配置,甚至无须更改 Keystore,即可直接支持 HTTP/2。只须将浏览器指向 8443 端口,WildFly 即可为您自动生成自签名的 TLS 证书,并在浏览器支持的情况下进行 HTTP/2 协商(大部分浏览器均已支持)。当准备好部署到生产环境后,只需要用打算为用户使用的证书更新 Keystore 即可。

默认domain.xml文件中一个名为“load-balancer”的新增配置文件进一步改善了负载平衡能力。域模式下的配置文件可对多个(物理或虚拟)节点进行集中化的管理,借此可配置多个 WildFly 实例以提供不同服务。

WildFly Swarm

根据 WildFly Swarm网站上的介绍:

WildFly Swarm 提供了一种创新式的 Java EE 应用程序打包和运行方法,可将应用程序与恰好够用的服务器运行时打包在一起,实现应用程序的“Java -Jar 化”。

WildFly Swarm 是在 WildFly 的基础上开发而来的。

Fixate IO公司资深内容编辑兼 DevOps 分析师Chris Tozzi在最近发布的一篇 Red Hat博客文章中介绍了 WildFly Swarm 所提供的收益:

简而言之,WildFly Swarm 可供用户将一个 JavaEE 应用拆解为以 uber-JAR 文件方式运行所必须的基本部件,进而可以用一种更精益,更均衡的方式部署 Java 应用。

简单来说,WildFly Swarm 可供用户全面拥抱面向微服务的开发和部署工作流,并从中获益。用户勿需继续使用整体式的方法构建和运行 JavaEE 应用,而是可以仅编译并部署自己需要的程序部件,抛弃所有不需要的内容。

Red Hat JBoss EAP平台架构师Jason Greene(曾就 WildFly 8 接受过InfoQ 的采访)向 InfoQ 介绍了最新版 WildFly:

InfoQ:您目前在 Red Hat 担任什么角色?

Greene:我是 JBoss EAP 的平台架构师,同时也是 WildFly 的社区项目主管。另外我还代表 Red Hat 加入了 Java EE 专家组,参与了 Java EE8 的相关工作。

InfoQ:除了完整支持 HHTP/2 以及自动生成 TLS 证书,相比 GlassFish 和 JonAS 等其他应用程序服务器,WildFly 还有什么独特之处?

Greene:不同产品在特定领域都有自己的优势,而 WildFly 在每个方面都做的更出色。这个产品非常轻巧,对开发者很友好,与此同时也是运行时工作负载的最佳选择。该产品提供了完整地企业级功能,同时 100% 开源,围绕该产品我们建立了一个真正开放的社区。该产品完全满足 Java EE Full Profile 认证要求,同时也可根据需要全面定制和精简。该产品包含丰富的管理模型,可全面胜任多节点管理工作,同时亦可满足简单的单节点管理需求。这个产品实际上是一种“鱼与熊掌可兼得”的应用程序服务器。

InfoQ:开发者和组织在启动一个项目时,到底该选择 WildFly、WildFly Swarm 或 JBoss EAP,对此您有什么建议?

Greene:Red Hat 软件模型的一个关键在于,我们提供了两种产品:一种侧重于用尽可能快的速度提供最新技术和创新的社区产品(WildFly);以及一种侧重于提供包含更长维护周期、更好兼容性、供应商认证、进一步加固,以及有保障的 SLA 全面支持的企业级订阅(JBoss EAP)。JBoss EAP 本身也是从 WildFly 中衍生出来的,包含大量源自用户需求的重要功能,因此用户可以从 WildFly 平滑切换至 EAP。最后,虽然我们的 JBoss EAP 是一种商用产品,但可免费用于开发用途,用户只须注册JBoss.ORG帐号即可下载使用。

WildFly Swarm 带给 Java EE 的微服务概念让人激动。该产品基于 WildFly 项目 / 架构,但新增了一个部署模型,可将应用程序所仰赖的应用程序服务器重构为一种可定制,大小恰到好处的 Jar 文件。该产品还提供了与 API 集成的特殊能力,非常适合用于服务的“混搭”,例如 Netflix Ribbon。此外该产品可全面支持 MicroProfile,这是企业 Java 社区最近新创建的微服务标准。

虽然具体项目可能更适合使用上述某一产品,但无论怎么选都不会有太大问题,因为这些不同产品的底层使用了一个统一、强大、灵活的架构。

InfoQ:在您看来,JavaEE 和 Java 9 开发工作的延后会对 WildFly、WildFly Swarm 或 JBoss EAP 的后续开发产生什么影响?

Greene:WildFly 和 JBoss EAP 已经远远超越了 EE 标准并在继续完善。当某一规范的开发出现延误后,我们会将精力专注于其他感兴趣的领域。话虽如此,我们依然希望整个标准能够跟上业界发展步伐,因此我们很乐意与 MicroProfile 开发领域的其他重量级选手进行合作。

JPoint公司软件工程师Roy van Rijn最近通过博客文章谈到了他自己有关 Java EE 未来发展的想法:

类似 Red Hat(开发了 WildFly)这样的供应商已经通过诸如WildFly Swarm等框架让自己的 Java EE 实现变得分崩离析了。Swarm 可以让用户打包并运行自己真正需要的组件,我觉得这才是企业级 Java 的未来发展方向。

参考资源

RedHat 提供了 WildFly 和 WildFly Swarm 的上手使用范例:

  • GitHub上的 WildFly Quickstarts。
  • GitHub上的 WildFly Swarm 范例。
  • 部署和运行 WildFly 应用程序的 Maven插件

查看英文原文:Red Hat Releases WildFly Application Server Version 10.1