第 17 章 持久性
二进制持久性或组合,将进程实例的状态转换为二进制数据集。二进制持久性是一种用于持久存储和检索信息的机制。相同的机制也应用到会话状态和工作项目状态。
当您启用进程实例的持久性时:
- Red Hat Process Automation Manager 将进程实例信息转换为二进制数据。出于性能的原因,使用自定义序列化而不是 Java 序列化。
- 二进制数据与其他进程实例元数据存储在一起,如进程实例 ID、进程 ID 和进程启动日期。
会话也可以存储其他形式的状态,如计时器作业的状态或业务规则评估所需的数据。会话状态单独存储为二进制数据集,以及会话和元数据的 ID。您可以通过重新载入带有给定 ID 的会话来恢复会话。使用 ksession.getId ()
获取会话 ID。
在配置了持久性时,Red Hat Process Automation Manager 将保留以下内容:
- 会话状态 :这包括会话 ID (上次修改日期)、业务规则评估所需的会话数据,以及计时器作业的状态。
- 进程实例状态 :这包括进程实例 ID、进程 ID、上次修改日期、进程实例启动日期、运行时数据(包括执行状态,包括正在执行的节点、变量值和其他进程实例数据)和事件类型。
- 工作项目 运行时状态 :这包括工作项目 ID、创建日期、名称、进程实例 ID 和工作项目状态本身。
根据持久数据,您可以恢复所有正在运行的进程实例的执行状态,以防失败或临时从内存中删除正在运行的实例,并在以后恢复它们。
17.1. 配置 KIE 服务器持久性 复制链接链接已复制到粘贴板!
您可以通过将 Hibernate 或 JPA 参数作为系统属性来配置 KIE 服务器持久性。
KIE 服务器可以确认带有以下前缀的系统属性,您可以使用带有以下前缀的每个 Hibernate 或 JPA 参数:
-
javax.persistence
-
hibernate
流程
要配置 KIE 服务器持久性,请完成以下任一任务:
如果要使用 Red Hat JBoss EAP 配置文件配置 KIE 服务器持久性,请完成以下任务:
-
在 Red Hat Process Automation Manager 安装目录中,进入
standalone-full.xml
文件。例如,如果您为 Red Hat Process Automation Manager 使用 Red Hat JBoss EAP 安装,请转到$EAP_HOME/standalone/configuration/standalone-full.xml
文件。 打开
standalone-full.xml
文件,并在 <system-properties&
gt; 标签下,将 Hibernate 或 JPA 参数设置为系统属性。使用 Hibernate 参数配置 KIE 服务器持久性示例
<system-properties> ... <property name="hibernate.hbm2ddl.auto" value="create-drop"/> ... <system-properties>
<system-properties> ... <property name="hibernate.hbm2ddl.auto" value="create-drop"/> ... <system-properties>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用 JPA 参数配置 KIE 服务器持久性示例
<system-properties> ... <property name="javax.persistence.jdbc.url" value="jdbc:mysql://mysql.db.server:3306/my_database?useSSL=false&serverTimezone=UTC"/> ... <system-properties>
<system-properties> ... <property name="javax.persistence.jdbc.url" value="jdbc:mysql://mysql.db.server:3306/my_database?useSSL=false&serverTimezone=UTC"/> ... <system-properties>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
如果要使用命令行配置 KIE 服务器持久性,请完成以下任务:
使用
-Dkey=value
直接从命令行传递参数,如下所示:使用 Hibernate 参数配置 KIE 服务器持久性示例:
$EAP_HOME/bin/standalone.sh -Dhibernate.hbm2ddl.auto=create-drop
$EAP_HOME/bin/standalone.sh -Dhibernate.hbm2ddl.auto=create-drop
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用 JPA 参数配置 KIE 服务器持久性示例:
$EAP_HOME/bin/standalone.sh -Djavax.persistence.jdbc.url=jdbc:mysql://mysql.db.server:3306/my_database?useSSL=false&serverTimezone=UTC
$EAP_HOME/bin/standalone.sh -Djavax.persistence.jdbc.url=jdbc:mysql://mysql.db.server:3306/my_database?useSSL=false&serverTimezone=UTC
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
在 Red Hat Process Automation Manager 安装目录中,进入