Siebel Performance Tuning Guide > Tuning Siebel EAI > Guidelines for Siebel EAI Tuning >

Improving Workflow Process Manager Performance


This topic is part of Guidelines for Siebel EAI Tuning. It discusses performance issues for the Workflow Process Manager component. For more information about Siebel Workflow performance, see Tuning Siebel Workflow. Also see Siebel Business Process Framework: Workflow Guide.

Workflow Process Manager is a task-based server component. A new thread is created for each request. However, sessions for Object Manager components (such as EAI Object Manager or Siebel Application Object Managers that can invoke workflow processes are cached and reused for subsequent requests. When sizing a system, consider the maximum number of workflow tasks you expect to have active at a given time. This determines the maximum number of Object Manager sessions Siebel applications create. In general, creating smaller workflow processes is recommended. If you cannot avoid creating a large workflow process, then divide the workflow process into subprocesses.

CPU and Memory Consumption

The exact CPU and memory consumption of each task depends on the actions performed in your workflow processes. To estimate CPU and memory consumption in your production environment, run a single task, measure its resource consumption, and make an estimation based on your maximum concurrent sessions. Take session caching into account when making these measurements.

If you need a large number of sessions, then you might want to run Workflow Process Manager on multiple Siebel Server computers. You can then use Siebel Server load balancing to load-balance requests across the Siebel Servers. If you plan to run a significant number of tasks per server (such as 100 or more), then you might also want to run multiple multithreaded processes.

If you are going to run several different types of workflows, then run each type in a separate process. This makes it easier to monitor the overall CPU and memory usage of each process type.

The number of multithreaded processes and the number of tasks per process are controlled through the parameters MaxMTServers (Maximum MT Servers), MinMTServers (Minimum MT Servers), and MaxTasks (Maximum Tasks).

NOTE:  These parameters are per Siebel Server. For example, MaxMTServers refers to how many multithreaded processes to run on each Siebel Server computer. For details, see Siebel System Administration Guide.

Performance Events

You can get performance tracing of workflows by setting the event WfPerf for the component in which your workflow is running. Setting the event to level 4 gives timing for the execution of the overall process. Setting the event to level 5 provides timing for each step as well.

You can set this event level for any Siebel Server component that invokes a workflow process as part of Siebel EAI functionality. For example, to set this event level for the MQ Receiver using srvrmgr, enter the following:

change evtloglvl WfPerf=5 for comp MqSeriesSrvRcvr

These events can be useful not just for measuring workflow performance but also for measuring the performance of business services executed within these workflows.

Siebel Performance Tuning Guide Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Legal Notices.