BPEL / EJB ADAPTER PERFORMANCE ISSUE
(Doc ID 1391299.1)
Last updated on JUNE 18, 2018
Applies to:Oracle SOA Platform - Version 18.104.22.168.0 to 22.214.171.124.0 [Release 11gR1]
Information in this document applies to any platform.
Synchronous BPEL process invoking the same EJB several times. Diagnostics indicate that BPEL appears to be blocking on calls to the EJB. The EJB itself is performing fine (tried with a separate EJB Client) , but when under load there seems to be contention between BPEL processes making ready to call the EJB (stateless). Having this tested with 600 BPEL instance thus spawning 4200 invocations of the EJB. Looking at the thread dump, there seems to be heavy lock contention because each request seems to be invoking the JAXB classloader. This will obviously not scale and will also have a latency overhead even on a single threaded basis.
When performing load testing on bpel processes that use SCA to invoke java classes, it can be seen contention on the engine and invoke thread pools. Performance is poor, and the instance cannot take advantage of the available CPUs.
Contention appears using default values of the invoke thread pools (20 threads) and the engine thread pools (30 threads). CPU use do not exceed 40% (20% per instance)
To view full details, sign in with your My Oracle Support account.
Don't have a My Oracle Support account? Click to get started!