Memory Usage

Without a thread pool on HTTP connectors there is also the possibility of excessive heap usage, causing potential “out of memory” errors, when clients are performing requests.

There can be sharp growth in heap usage whilst calls are being performed up until the JVM decides to perform garbage collection. Depending on the amount of heap to be freed the garbage collection may cause a “stun” of the virtual machine for a short while, impacting clients and throughput of the BPM node.

This is caused by excessive object cycling due to the use of new threads for client calls rather than re-using threads from a pool. Using a pool of threads avoids thread-specific data held in various different packages being created and then thrown away for a single client call to TIBCO ActiveMatrix BPM.

For more information on thread pools and how they can be configured, see Thread Pools