启用可恢复的服务

要为流程应用程序启用可恢复的仪表板,必须配置 com.ibm.bpm.social.zResumable 属性。

关于此任务

当调用公开的传统人员服务时,服务实例和关联数据仍保留在 Process Portal 用户的会话内存中,直至发生以下某种情况:传统人员服务结束、Process Portal 用户注销或会话由于不活动而超时。

如果 Process Portal 用户导航离开传统人员服务 Coach,那么服务实例仍保留在用户的会话中。会话将保存在 IBM® Business Process Manager 服务器内存中,如果累积了很多服务实例,那么这可能导致大量内存分配。因此,当编写和公开传统人员服务时,请考虑各种服务类型和服务生命周期。

不可恢复的服务

缺省情况下,服务不可恢复。每次调用服务时,都会创建新的服务实例。如果服务未流向结束节点,那么每个实例仍保留在 Process Portal 用户的会话中(直至注销或会话超时),这样每个用户就可能会利用大量服务器内存。因此,服务通常应流向结束节点,以便立即从 Process Portal 用户的会话中除去服务。

Process Portal 启动列表中调用的可启动服务和从 Process Admin Console 调用的管理服务不可恢复。

可恢复的服务

服务可作为可恢复的服务来调用(通过 zResumable=true 调用)。 当服务可恢复时,如果之前创建的服务实例在 Process Portal 用户的会话中仍可用,那么会复用服务实例。来自先前实例调用的服务状态和任何服务变量集仍位于会话内存中,并且可供使用。如果服务未流向结束节点,那么一个实例仍保留在会话中,并且可供复用(直至注销或会话超时)。如果仪表板服务流向结束节点,那么会从会话中除去服务实例,并且在下次恢复服务时,会提示 Process Portal 用户重新启动服务。通常会编写可恢复服务,这样它们就不会结束,这使 Process Portal 用户能够在其注销的位置继续。

从 Process Portal 调用的仪表板服务可以配置为可恢复服务(通过 zResumable=true 调用)。

注: 只能恢复 Snapshot 中调用的服务。调用 Tip 中的服务时,服务永远不能恢复,它支持 Process Center 上的迭代开发方案。

过程

要为流程应用程序启用可恢复的仪表板,必须配置 com.ibm.bpm.social.zResumable 属性:

  1. 打开管理控制台,然后单击资源 > 资源环境提供程序 > 资源环境提供程序 > Mashups_ConfigService > 定制属性
  2. 创建名为 com.ibm.bpm.social.zResumable 的属性,并将其值设置为流程应用程序标识列表,例如:TRD,RD,MAILCOM
  3. 保存更改
  4. 重新启动服务器。
    要点: 请勿将 Process Portal (TWP) 流程应用程序添加到 com.ibm.bpm.social.zResumable 列表中。Process Portal 应用程序中交付的仪表板不会被设计为可恢复。
  5. 通过使用以下 URL 调用可恢复的服务:http://host_name:port/contextRootPrefix/executeServiceByName?processApp=acronym&serviceName=MyService contextRootPrefix 的缺省值是 teamworks。 更多有关如何配置定制上下文根的信息,请参阅 BPMConfig 命令行实用程序主题中的 -update 参数部分。
  6. 除了标准服务 URL 参数外,还可以使用以下可恢复的参数:
    zResumable=true
    此参数可恢复用户的仪表板会话。 缺省情况下,它附加到所有仪表板 URL。根据用户会话存储可恢复实例,因此不同的用户具有不同的实例。 在用户注销时,将清除所有可恢复实例。此参数可以与可选的 zClientHandle={key} 参数一起使用。如果将仪表板的流程应用程序添加到 com.ibm.bpm.social.zResumable 列表中,那么自动通过 zResumable=true 调用从 Process Portal 调用的仪表板服务。
    zForceNew=true
    如果使用 URL 将仪表板作为在 Process Portal 外部运行的应用程序的一部分进行启动,那么可以使用此参数来覆盖 zResumable=true 参数,以产生新的仪表板实例。 如果使用此参数,就必须确保已终止服务,例如,通过对服务中的结束事件进行建模,或通过调用 API 来完成或终止服务。
    [zClientHandle={key}]
    如果使用 URL 将仪表板作为在 Process Portal 外部运行的应用程序的一部分进行启动,那么可以将此可选参数与 zResumable=true 参数一起使用。 通过这些参数,您可以将客户端键作为引用,以恢复和引用多个仪表板实例。

    有关 HTTP 会话设置(包括会话超时间隔)的信息,请参阅 IBM WebSphere® Application Server 文档中的会话管理设置