IBM BPM, V8.0.1, All platforms > Tuning > Advanced tuning > Business Process Choreographer tuning
Tuning work-manager-based navigation for business processes
Work-manager-based navigation (as opposed to JMS-based navigation) is the default navigation mode for IBM BPM.
Work-manager-based navigation provides two performance optimizations, keeping the quality of service of process navigation with persistent messaging (JMS-based navigation):
- Work-manager-based navigation. A work manager is a thread pool for Java EE threads. Work manager process navigation exploits an underlying capability of WebSphere Application Server to start the processing of ready-to-navigate business flow activities without using messaging as provided by JMS providers.
- The InterTransactionCache, a part of the work-manager-based navigation mode, which holds process instance state information in memory, and reduces the need to retrieve information from the BPE database.
There are several parameters that control the use of these two optimizations. The first set of these parameters is available by clicking Servers > Server Types > WebSphere application Servers > server_name > Business Integration > Business Process Choreographer > Business Flow Manager > Business Process Navigation Performance.
The key parameters are:
- Enable advanced performance optimization check box: Select this check box to enable both the work-manager-based navigation and InterTransactionCache optimizations.
- Work-Manager-Based Navigation Message Pool Size: This property specifies the size of the cache used for navigation messages that cannot be processed immediately, provided work-manager-based navigation has been enabled. The cache defaults to a size of (10 * thread pool size of the BPENavigationWorkManager) messages. If this cache reaches its limit, IBM BPM uses JMS-based navigation for new messages. Therefore, ensure the Message Pools size is set to a sufficiently high value, for optimal performance.
- InterTransaction Cache Size: This property specifies the size of the cache used to store process state information that has also been written to the BPE database. It should be set to twice the number of parallel running process instances. The default value for this property is the thread pool size of BPENavigationWorkManager.
In addition, customize the number of threads for the work manager by using Resources > Asynchronous Beans > Work Managers > BPENavigationWorkManager.
Increase the minimum number of threads from the default value of 5, and increase the maximum number of threads from the default value of 12. If the thread pool size is modified, the work request queue size should also be modified and set to be twice the maximum number of threads.
For WebSphere Application Server for z/OS performance tuning details, see
Tuning performance in the WebSphere Application Server for z/OS Information Center .
Take care when allocating threads to the IBM BPM server. On z/OS, there are standard thread settings for ISOLATE, IOBOUND, CPUBOUND, and LONGWAIT, which need to be examined based on the workload. The workload profile can be set using the administrative console as follows: Servers > Server Types > WebSphere application servers > server_name > Container Settings - Container Services - ORB Service > z/OS additional settings.
Business Process Choreographer tuning
Related concepts:
JMS connection pool sizes