Tuning Business Rules and Workflows
The following sections describe how to tune business rules and workflows to maximize performance. Implementing these practices can significantly improve overall system performance and reduce deadlocks and timeouts caused by the workflow engine.
•Disabling Inactive Business Rules
•Validating Email Addresses in Notification Workflows
Disabling Inactive Business Rules
Review all active business rules. If a business rule is no longer used, disable it by removing its trigger and updating the rule description to disabled.
Disabling Inactive Workflows
Whenever a workflow is triggered, the system adds it to the event queue where it waits to be processed. Reducing the number of workflows waiting to be processed in the event queue improves performance. Review all active workflows. If a workflow is not used, disable it and update is description to disabled.
Deleting Workflow Tables
It is not uncommon for workflow history tables to contain hundreds of thousands of records. Workflow instance tables can also contain large numbers of records. Deleting workflow history and instance tables prevents the workflow engine from having to query them. Deleting workflow history and instance tables can significantly improve event table performance.
For details about how to deleting tables, see Deleting Inactive Tables and Records.
We recommend that you delete workflow tables on a regular basis (such as one or more times per week, if feasible).
Validating Email Addresses in Notification Workflows
If a notification workflow containing an invalid email address is triggered, event queue resources are wasted while the invalid email address is evaluated and processed. To prevent this situation, add a condition to notification workflows so that email addresses are validated before the workflow is triggered.