Bookshelf Home | Contents | Index | Search | PDF |
Performance Tuning Guide > Tuning Siebel Workflow for Performance > Monitoring Workflow Processes >
Persistence Setting Guidelines for Workflow Processes
In general, workflow processes are classified into two categories:
- In-memory or short duration workflows. These workflows are typically jobs that start and finish as a single execution of a series of steps in memory.
In-memory flows are generally characterized by a large numbers of flows that are inexpensive to execute.
An example of an in-memory workflow is the creation of an activity record for a customer service representative (CSR) when a Service Request is created and sends an email to the CSR. The lifespan of this workflow is in seconds.
- Long-running workflows. These workflows are typically flows that start, perform an activity, suspend, and resume at a later point.
The lifecycle of such a flow can span multiple suspends and resumes. At execution time, such long-running flows are usually fewer in number but higher in complexity and number of steps.
An example of a long-running workflow is the creation of an activity record for a CSR when a Service Request is created, sends an email to the CSR, and waits for a day for the activity to be completed; if the activity is not completed in a day, the workflow creates an activity record for the customer service supervisor. The lifespan of this workflow is in days.
Persistence Guidelines for In-Memory Workflow Processes
For in-memory workflows, it is recommended not to set persistence for these workflow processes. The performance cost of in-memory workflows is significantly increased when persistence is turned on.
Errors that occur when executing in-memory workflows are usually logged to Siebel Server log files. Review these log files to detect performance errors.
NOTE: Usage of Wait step (in minutes, hours, and days) implicitly turns on persistence, but no user setting is needed for this setting.
Persistence Guidelines for Long-Running Workflows
For long-running workflows, the recommended settings are as follows:
It is recommended that these settings be used only for workflow processes whose execution spans a significant time duration and needs to be suspended and resumed at a later time. Production workflows must have these settings to enable the long-running workflow feature.
There is a significant performance impact when using this feature. The performance impact is minimized when these settings are applied to complex workflows where the overall execution time of the workflow is much larger than the overhead of storing and retrieving workflow state.
Persistence Guidelines for Debugging Workflow Processes
Use persistence for either long-running or in-memory workflows to debug and troubleshoot workflows. Setting persistence is typically recommended during the development phase in order to make sure workflows are working correctly. For debugging and tracing, any combination of level and frequency can be used and provides detailed data with appropriate performance impacts.
Use the following settings to provide current step level debugging data with medium performance impact. This setting is the minimum setting.
Use the following settings to provide step level debugging at all steps with very high performance impacts. This setting this is the maximum setting.
It is strongly recommended to:
- Use persistence settings only for troubleshooting and testing.
- Use persistence settings on a process-by-process basis rather than on all processes.
- Turn off persistence once the workflow is ready for deployment.
Error Handling and Monitoring
For application error handling, it is recommended that workflow processes be developed to incorporate error handling within the workflow definition. Siebel Workflow provides error handling through two features: exception branches and error processes. Generally, use exception branches or error processes to handle application errors.
For more information on exception branches, refer to Siebel Business Process Designer Administration Guide.
Bookshelf Home | Contents | Index | Search | PDF |
Performance Tuning Guide Published: 24 October 2003 |