第 6 章 功能修剪

构建可引导 JAR 时,您可以决定要包含哪些 JBoss EAP 功能和子系统。

注意

仅 OpenShift 或构建可引导 JAR 时支持功能修剪。

其他资源

6.1. 可用的 JBoss EAP 层

红帽提供了多个层,可用于自定义 OpenShift 中的 JBoss EAP 服务器调配或可引导 JAR。

三个层是提供核心功能的基础层。其他层是解耦器层,使用额外的功能增强基础层。

大多数 decorator 层可用于在 JBoss EAP 中为 OpenShift 构建 S2I 镜像或构建可引导 JAR。些层不支持 S2I 镜像;对层的描述请注意此限制。

注意

仅支持列出的层。不支持此处未列出的层。

6.1.1. 基础层

每个基础层都包含适用于典型服务器用户案例的核心功能。

datasources-web-server

此层包括一个 servlet 容器,以及配置数据源的功能。

此层不包括 MicroProfile 功能。

此层支持以下 Jakarta EE 规格:

  • Jakarta JSON 处理 1.1
  • jakarta JSON Binding 1.0
  • Jakarta Servlet 4.0
  • Jakarta Expression Language 3.0
  • Jakarta 服务器页面 2.3
  • Jakarta Standard Tag Library 1.2
  • jakarta Concurrency 1.1
  • Jakarta 注释 1.3
  • Jakarta XML Binding 2.3
  • 雅加达调试支持其他语言 1.0
  • Jakarta Transaction 1.3
  • Jakarta Connector API 1.7
jaxrs-server

该层通过以下 JBoss EAP 子系统 增强了数据源-web-server 层:

  • jaxrs
  • weld
  • jpa

此层还添加了基于 Infinispan 的第二级实体在容器中进行本地缓存。

此层中包含以下 MicroProfile 功能:

  • MicroProfile REST 客户端

除了 datasources-web-server 层所支持的以下 Jakarta EE 规格外,还支持以下 Jakarta EE 规格:

  • Jakarta 上下文和依赖注入 2.0
  • Jakarta Bean Validation 2.0
  • Jakarta Interceptors 1.2
  • Jakarta RESTful Web Services 2.1
  • Jakarta Persistence 2.2
cloud-server

该层使用以下 JBoss EAP 子系统增强了 jaxrs-server 层:

  • resource-adapters
  • messaging-activemq (远程代理消息传递,而非嵌入式消息传递)

此层还会在 jaxrs-server 层中添加以下可观察功能:

  • MicroProfile Health
  • MicroProfile Metrics
  • MicroProfile Config
  • MicroProfile OpenTracing

除了 jaxrs-server 层支持的以下 Jakarta EE 规格外,还支持以下 Jakarta EE 规格:

  • Jakarta 安全 1.0

6.1.2. decorator 层

解码器层不单独使用。您可以使用基础层配置一个或多个 decorator 层,以提供额外的功能。

ejb-lite

这个 decorator 层为调配的服务器添加了一个最小的 Jakarta Enterprise Beans 实施。这个层不包括以下支持:

  • IIOP 集成
  • MDB 实例池
  • 远程连接器资源

只有在构建可引导 JAR 时才支持这一层。使用 S2I 时不支持这个层。

Jakarta Enterprise Beans

这个解码器层扩展了 ejb-lite 层。除了 ejb-lite 层中包含的基本功能外,这个层还会为置备的服务器增加以下支持:

  • MDB 实例池
  • 远程连接器资源

如果要使用消息驱动型 Bean(MDB)或 Jakarta 企业 Bean 远程功能或两者,可使用此层。如果您不需要这些功能,请使用 ejb-lite 层。

只有在构建可引导 JAR 时才支持这一层。使用 S2I 时不支持这个层。

ejb-local-cache

此 decorator 层向调配的服务器中添加了对 Jakarta 企业 Bean 的本地缓存支持。

依赖项 :您只能在包含 ejb-lite 层或 ejb 层时包括这个

注意

这个层与 ejb-dist-cache 层不兼容。如果包含 ejb-dist-cache 层,则无法包含 ejb-local-cache 层。如果您同时包含这两个层,生成的构建可能包含意外的 Jakarta Enterprise Beans 配置。

只有在构建可引导 JAR 时才支持这一层。使用 S2I 时不支持这个层。

ejb-dist-cache

此 decorator 层向调配的服务器添加了对 Jakarta 企业 Bean 的分布式缓存支持。

依赖项 :您只能在包含 ejb-lite 层或 ejb 层时包括这个

注意

这个层与 ejb-local-cache 层不兼容。如果包含 ejb-dist-cache 层,则无法包含 ejb-local-cache 层。如果您同时包含这两个层,则生成的构建可能会导致意外的配置。

只有在构建可引导 JAR 时才支持这一层。使用 S2I 时不支持这个层。

jdr

此解码器层添加了 JBoss 诊断报告(jdr)子系统,以在请求红帽支持时收集诊断数据。

只有在构建可引导 JAR 时才支持这一层。使用 S2I 时不支持这个层。

Jakarta Persistence

这个解码器层为单节点服务器增加了持久性功能。请注意,只有服务器能够组成集群,分布式缓存才有效。

该层将 Hibernate 库添加到置备的服务器中,并提供以下支持:

  • jpa 子系统的配置
  • 配置 infinispan 子系统
  • 本地 Hibernate 缓存容器
注意

这个层与 jpa-distributed 层不兼容。如果包含 jpa 层,则无法包含 jpa-distributed 层。

只有在构建可引导 JAR 时才支持这一层。使用 S2I 时不支持这个层。

jpa-distributed

此解码器层为集群中运行的服务器添加持久性功能。该层将 Hibernate 库添加到置备的服务器中,并提供以下支持:

  • jpa 子系统的配置
  • 配置 infinispan 子系统
  • 本地 Hibernate 缓存容器
  • 无效的和复制 Hibernate 缓存容器
  • 配置 jgroups 子系统
注意

这个层与 jpa 层不兼容。如果包含 jpa 层,则无法包含 jpa-distributed 层。

只有在构建可引导 JAR 时才支持这一层。使用 S2I 时不支持这个层。

Jakarta Server Faces

此 decorator 层将 jsf 子系统添加到调配的服务器。

只有在构建可引导 JAR 时才支持这一层。使用 S2I 时不支持这个层。

microprofile-platform

此 decorator 层将以下 MicroProfile 功能添加到调配的服务器中:

  • MicroProfile Config
  • MicroProfile 容错
  • MicroProfile Health
  • MicroProfile JWT
  • MicroProfile Metrics
  • MicroProfile OpenAPI
  • MicroProfile OpenTracing
注意

此层包含也会包含在 可观察 层中的 MicroProfile 功能。如果包含这个层,则不需要包含 可观察 层。

Observability(可观察性)

这个 decorator 层在置备的服务器中添加以下可观察功能:

  • MicroProfile Health
  • MicroProfile Metrics
  • MicroProfile Config
  • MicroProfile OpenTracing
注意

此层内置到 cloud-server 层。您不需要将此层添加到 云服务器层

remote-activemq

此 decorator 层添加了与远程 ActiveMQ 代理与调配的服务器通信的功能,从而集成消息传递支持。

池式连接工厂配置将 guest 指定为 用户和 密码 属性的值。您可以使用 CLI 脚本在运行时更改这些值。

只有在构建可引导 JAR 时才支持这一层。使用 S2I 时不支持这个层。

sso

这个解码器层将红帽单点登录集成添加到调配的服务器中。

只有在使用 S2I 调配服务器时,才应使用此层。

web-console

此 decorator 层将管理控制台添加到调配的服务器。

只有在构建可引导 JAR 时才支持这一层。使用 S2I 时不支持这个层。

web-clustering

此decorator 层通过配置基于非本地 Infinispan 的容器 web 缓存来增加对可分布式 Web 应用的支持,以便处理适合集群环境的数据会话。

web-passivation

此后方层通过为适合单一节点环境的数据传输配置基于 Infinispan 的容器 Web 缓存来配置对可分发的 Web 应用的支持。

只有在构建可引导 JAR 时才支持这一层。使用 S2I 时不支持这个层。

Web 服务

此层向调配的服务器添加 Web 服务功能,支持 Jakarta Web 服务部署。

只有在构建可引导 JAR 时才支持这一层。使用 S2I 时不支持这个层。

其他资源