针对等待时间优化流程执行
为等待时间选择优化以减少需要低等待时间响应的流程的线程上下文切换。启用后,此优化将使流程保留其执行线程,而不是将其释放回活动之间共享的线程池。
缺省情况下,不会为等待时间优化新的流程,这表示在活动之间,实例会将其执行线程返回到共享线程池。您可以在 Process Designer 中更改流程的优化设置。
关于此任务
系统任务和决策任务的实施执行由事件管理器安排。每个集群成员都有一个事件管理器,事件管理器使用线程池根据创建顺序来安排工作。这种线程池用法使得流程的实施能够以独立、并行的方式运行。
如果 IBM BPM 系统正在高负载下运行,那么特定流程实例的实施的处理可能会延迟,因为其他工作已安排在它之前执行。该线程共享行为可能会增加整个流程实例的等待时间。但是,一些类型的流程需要更高的性能来最大限度减少直通式处理等待时间。如果直通式处理流程不包含任何并行路径,而是执行一系列通过集成服务实施的系统任务和决策任务,那么通过对一个集群成员使用单个线程,该工作可在等待时间更少的情况下更高效地运行。
此优化设置定义两类流程:
- 缺省处理行为未针对等待时间进行优化,这表示在每个工作单元之后将释放线程。此行为可确保使用缺省设置的所有流程实例都有同等机会继续流程导航。
- 将在流程用于导航的同一线程上执行针对等待时间进行优化的系统任务和决策任务。 如果流程的并行路径中存在多个系统任务或决策任务,那么同一线程将仅执行一条路径,其他路径将由事件管理器安排为使用缺省行为。 带有此执行优化的流程实例将使用事件管理器线程更长时间,因此将提供更可预测的等待时间。
您必须注意避免对其他实例、服务、Undercover Agent 及其他使用共享线程池的功能产生负面性能影响。
- 请勿对系统中的所有流程都启用此优化选项,否则对于流程实例,获得一个执行线程所需的等待时间可能会增加。
- 确保已启用此优化并且根据时间单位发送至集群成员的流程的请求数未超出可用于处理请求的执行线程的容量。
过程
要为等待时间启用优化,请完成以下操作。
- 打开流程。
- 在概述选项卡上,打开高级部分。
- 选择为等待时间优化执行以减少流程的线程上下文切换。 清除此选项将关闭流程的优化。