使用管理控制台以配置和计划定期删除处于特定状态的 BPEL 流程和人员任务的清除作业。
准备工作
最适合计划清除服务时,例如,
数据库中负载最低时,确定当天的时间和一周内的天数。 对于您希望清除服务删除的每个 BPEL 流程和人员任务,决定哪些状态使实例成为删除的备选对象,并决定下一个计划的清除删除这些状态前,实例必须处于其中一种状态的时长。
关于本任务
您将已完成的实例保存一段时间后,希望将它们自动删除。 对于业务流程管理器和人员任务管理
器,存在单独的清除服务。 对于它们,您必须首先启用服务并定义服务参数,例如计划、清
除的最长持续时间以及数据库事务大小。 然后,您可以定义模板集的清除作业,并定义实例为符合删除条件而必须处于的结束状态和持续时间。
人员任务管理器清除服务仅删除独立人员任务,但是,业务流程管理器清除服务删除 BPEL 流程时,它还会删除包含在此流程中的所有子流程和内联人员任务。 针对 Business Process Choreographer 配置所指定的清除用户标识必须处于业务管理员角色。
过程
- 配置 业务流程管理器的清除服务。
要配置清除服务,请在管理控制台中单击 ,然后在 配置 选项卡上的 Business Process Manager 部分中, 展开 Business Process Choreographer,然后单击 业务流程管理器。
选择下列其中一个选项:
- 要更改设置而无需重新启动集群,请选择运行时选项卡。
- 要进行仅在重新启动集群之后才会生效的更改,请选择配置选项卡。
- 在 其他属性 部分中,单击 清除服务设置。
- 如果未启用清除服务,请选择 启用清除服务。
对于集群配置,将计划在集群(清除服务在其上配置)的一个集群成员上运行清除服务。
- 对于 频率,指定业务流程管理器清除服务将运行的时间和频率。 输入 WebSphere® crontab 格式字符串,定义低负载时段的开始。
例如,要在每晚 11 点运行清除服务,请使用缺省值 0 0 23 * * ? 。
- 对于 最长持续时间,输入允许清除运行的最长时间。
缺省值为 120 分钟。 确保最长持续时间比频率指定的时间间隔短。
- 对于 事务片,输入将在每个数据库事务中删除的 BPEL 流程实例数。
缺省值是 10。 由于该值影响清除服务的性能,因此应该尝试不同的值。 根据要删除的人员任务的大小,您可以增加片大小以提高性能。 但是,如果事务超时,您应减少该值。
- 保存您的更改。
- 为 业务流程管理器添加新的清除作业。
- 在管理控制台的 " 业务流程管理器 " 页面上,单击 清除服务作业。
- 要创建新的清除作业,请单击 添加。
- 如果这不是唯一的清除作业,那么对于 订单号,可以选择用于确定作业运行顺序的序号 (从数字零开始)。
- 对于 清除作业,输入作业的名称。
- 对于 模板,输入将删除其实例 (包括任何内联人员任务) 的一个或多个 BPEL 流程模板的名称 (每行一个) ,或者输入星号 ("
*") 以指定所有 BPEL 流程模板。
- 对于 将清除限制为处于以下状态的实例,请选择以下一个或多个状态:
- 对于 删除前的持续时间,指定实例在被清除作业删除之前必须处于其中一种指定状态的时间长度。
在以下字段中输入整数: 分钟, 小时, 天, 月和 年。 缺省值为两小时。
- 单击 应用 或 确定。
- 保存您的更改。
- 如果需要,重复此步骤为 BPEL 流程实例定义更多清除作业。
- 为 人员任务管理器配置清除服务。
要配置清除服务,请在管理控制台中单击 ,然后在 配置 选项卡上的 Business Process Manager 部分中, 展开 Business Process Choreographer,然后单击 人员任务管理器。
- 如果未启用清除服务,请选择 启用清除服务。
对于集群配置,将计划在集群(清除服务在其上配置)的一个集群成员上运行清除服务。
- 对于 频率,指定人员任务管理器清除服务将运行的时间和频率。 输入定义较短装入时段的 WebSphere
crontab 格式字符串。
提示: 如果还启用了业务流程管理器的清除服务, 指定与步骤
1.e 和
1.f中指定的值定义的时间窗口不重叠的调度。 例如,如果业务流程管理器清除服务在每晚一点开始,而且可以运行长达两小时,那么您可以通过输入值
0 0 3 * * ? 来指定人员任务管理器的清除服务在每晚三点运行。
- 对于 最长持续时间,输入允许清除运行的最长时间。
缺省值为 120 分钟。 确保最长持续时间比频率指定的时间间隔短。
- 对于 事务片,输入将在每个数据库事务中删除的人员任务实例数。
缺省值是 10。 由于该值影响清除服务的性能,因此应该尝试不同的值。 根据要删除的人员任务的大小,您可以增加片大小以提高性能。 但是,如果事务超时,您应减少该值。
- 保存您的更改。
- 为 人员任务管理器添加新的清除作业。
- 在管理控制台的 " 人员任务管理器 " 页面上,单击 清除作业。
- 要创建新的清除作业,请单击 添加。
- 如果这不是唯一的清除作业,那么对于 订单号,可以选择用于确定作业运行顺序的序号 (从数字零开始)。
- 对于 清除作业,输入作业的名称。
- 对于 模板,输入将删除其实例的一个或多个独立人员任务模板的名称 (每行一个) ,或者输入星号 (
*) 以指定所有独立人员任务模板。 要为任务模板指定名称空间,将其附加在方括号中,例如,
myTaskTemplate
(http://bpc/samples/task/)。
注: 人员任务管理器清除服务还可以删除使用人员任务管理器 API 启动的内联调用任务。
- 对于 将清除限制为处于以下状态的实例,请选择以下一个或多个状态:
- 已完成
- TERMINATED
- FAILED
- 不活动
- 已到期
- 对于 删除前的持续时间,指定实例在被清除作业删除之前必须处于其中一种指定状态的时间长度。
在以下字段中输入整数: 分钟, 小时, 天, 月和 年。 缺省值为两小时。
- 单击 应用 或 确定。
- 保存您的更改。
- 如果需要,重复此步骤为独立人员任务实例定义更多清除作业。
- 如果在 配置 选项卡上进行了更改,请重新启动集群以激活这些更改。
结果
您已激活清除服务并定义清除作业以删除完成的实例。 清除服务启动并完成时,消息 CWWBF0118I
和 CWWBF0119I 会被写入 SystemOut.log 文件。 一项清除作业启动并完成时,消息
CWWBF0116I 和 CWWBF0117I 会被写入 SystemOut.log 文件。 清除处理的进度更新会通过消息 CWWBF0120I 写入到 SystemOut.log。