IBM FileNet P8, Version 5.2.1            

Configuring asynchronous rules processing

To improve workflow performance, an administrator can configure the system for asynchronous (background) rules processing, and the workflow author can identify the specific rule sets that require this processing.

While the Rules software can execute most rule sets in microseconds or less, some rule sets, such as database lookups, require longer processing time. While a workflow system server thread that handles the client request is waiting for a response from the Rules software it is not available to process other incoming requests.

Asynchronous processing creates an extra load on the workflow system by requiring scheduling of background rules execution, extra queuing, and extra processing. For a rule set specified for asynchronous processing, the workflow system queues the rules execution to the ISI queue for background execution. A rule set not specified for asynchronous processing is executed via the normal execution path. Therefore, to avoid overall system degradation, only rule sets that require long process time should be categorized for asynchronous processing.

Important: Using Asynchronous Rules with the OnSave option cause unexpected behavior in your application, because a step that was previously locked will be automatically unlocked after the rule has been executed. When a rule executes asynchronously, the work item is removed from its queue, put into the isi queue for execution by the vwisi thread, and then returned to the original queue. During this procedure, it is not possible to retain the lock on the work object, so after the asynchronous rule executes, a work item that was previously locked will no longer be locked by the user. This issue does not apply for rules executed asynchronously Before Execution or After Completion of the step.
For cases where the isi thread cannot empty its queue fast enough, you can use the following procedure to increase the number of vwisi threads to serve the InstructionSheetInterpreter queue.
  1. In the administration console, increase the maximum number of primary threads for the workflow subsystem.
    • In the domain navigation pane, select the domain.
    • On the Workflow Subsystem tab, increase the Maximum primary threads value.
If you have rule sets that cannot be executed by the rules engine in less than a second, you can complete the following steps to enable asynchronous rules processing:
  1. Access the configuration for remote servers in the administration console:
    1. In the domain navigation pane, select the object store.
    2. In the object store navigation pane, click Administrative > Workflow System.
    3. In the details pane, click the Remote Servers tab.
  2. On the Remote Servers tab, select the Allow Async Rules check box to make the Asynchronous Rules option available in Process Designer.
  3. Work with the workflow author to identify the specific rule sets that are to use asynchronous processing.


Last updated: October 2015
bpfwd061.htm

© Copyright IBM Corporation 2015.