2.6. Business Central 中的部署单元
项目中的服务在运行时会在配置的 KIE 服务器上通过实例化的 KIE 容器 或部署单元 使用。当您在 Business Central 中构建和部署项目时,会在配置的服务器中自动创建部署单元。您可以根据需要在 Business Central 中启动、停止或删除部署单元。您也可以从以前构建的项目创建额外的部署单元,并在 Business Central 中配置的现有或新的 KIE 服务器上启动它们。
2.6.1. 在 Business Central 中创建部署单元 复制链接链接已复制到粘贴板!
作为红帽流程自动化管理器配置的一部分,应该已存在一个或多个部署单元,但是如果不是,您可以从之前在 Business Central 中构建的项目中创建部署单元。
先决条件
- 您要为其创建新的部署单元的项目已在 Business Central 中构建。
流程
-
在 Business Central 中,前往 Menu
Deploy Execution servers。 - 在 Server Configurations 下,选择现有配置或点 New Server Configuration 来创建配置。
- 在 Deployment Units 下,点 Add Deployment Unit。
- 如果需要,在 Alias 字段中添加一个别名。
- 在窗口中的表中,选择一个 GAV,再单击 GAV 旁边的 Select 来填充部署单元数据字段。
- 选择 Start Deployment Unit? 框立即启动该服务,或者清除该框以便稍后启动该服务。
点 Finish。
该服务的新部署单元会被创建并放置在为这个服务器配置配置的 KIE 服务器上。如果您选择了 Start Deployment Unit?,服务将启动。
2.6.2. 在 Business Central 中启动、停止和删除部署单元 复制链接链接已复制到粘贴板!
启动部署单元时,部署单元中的服务可供使用。如果只有一个 KIE 服务器连接到 Business Central,或者所有连接的 KIE 服务器都在同一服务器配置中,则服务会在部署项目时自动在部署单元中自动启动。如果有多个服务器配置可用,则部署时会提示您指定服务器和部署详情并启动部署单元。但是,您可以在任何时候手动启动、停止或删除 Business Central 中的部署单元,以根据需要管理部署的服务。
流程
-
在 Business Central 中,前往 Menu
Deploy Execution servers。 - 在 Server Configuration 下,选择一个配置。
- 在 Deployment Units 下,选择一个部署单元。
- 单击右上角的 Start、停止 或 Remove。要删除正在运行的部署单元,请将其停止,然后将其删除。
2.6.3. KIE 容器别名 复制链接链接已复制到粘贴板!
KIE 容器(部署单元)的别名是 KIE 服务器实例中的一个代理,可帮助处理同一容器部署的不同版本。您可以将单个别名链接到容器的不同版本。当容器升级时,链接的别名会自动指向容器的新版本。有关创建 KIE 容器别名的详情,请参考 第 2.6.1 节 “在 Business Central 中创建部署单元”。
例如,如果每次部署容器的新版本时,客户端应用都会更改,客户端应用可以指向容器别名。部署新容器版本时,相关的别名会更新,所有请求都会被自动路由到新容器,而无需更改客户端应用。
考虑包含单个进程并使用以下属性的示例项目:
-
GroupId: org.jbpm -
artifactId :my-project -
Version: 1.0 -
containerID:my-project
当您更新、构建和部署上述项目时,相关的项目会使用最新版本在 KIE 服务器上更新,并包含以下属性:
-
GroupId: org.jbpm -
artifactId :my-project -
Version: 2.0
如果要部署项目的最新版本,则需要将 containerID 更新为 my-project2,因为 my-project 容器指向旧版本。
每个项目版本包含不同的 containerID 名称。相关的客户端应用程序需要了解它们交互的所有项目版本。
容器别名还帮助您管理 KIE 容器。您可以在创建容器时显式设置容器别名,或根据关联的 ArtifactId 名称隐式设置容器别名。如果需要,您可以在多个容器中添加单个别名。如果没有指定容器别名,则项目的 ArtifactId 会默认设置为容器别名。
当您为包含不同 GroupId 和 ArtifactId 名称的多个容器设置别名时,您可以在每次与 KIE 服务器交互时使用相同的别名。
您可以在以下用例中使用容器别名:
- 使用最新版本的 进程在客户端应用程序上启动新的进程实例
- 与一个进程的现有特定版本进行交互
- 在一个进程中的现有任务进行交互
- 与进程定义镜像和表单交互
例如,在部署项目的 1.0 版本后,您将向以下 KIE Server REST API 端点发送 POST 请求,以便在项目中启动进程:
/http://localhost:8230/kie-server/services/rest/server/containers/my-project/processes/evaluation/instances
发送的请求从 org.jbpm:my-project:1.0 启动一个新进程实例,其中 my-project 被定义为容器别名。之后,当您部署项目的 2.0 版本并发送同一请求时,新实例从 org.jbpm:my-project:2.0 开始。您可以在不添加 containerID 名称的情况下部署最新版本的进程。