Tom Cunningham created JBESB-3952:
-------------------------------------
Summary: Performance regression with Bpm5Processor
Key: JBESB-3952
URL:
https://issues.jboss.org/browse/JBESB-3952
Project: JBoss ESB
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: Process flow
Affects Versions: 4.11 CP3
Reporter: Tom Cunningham
Assignee: Tom Cunningham
Fix For: 4.11 CP3
From Martin Weiler :
I did a quick test comparing the original
code they used (based on the
SOA-5.3.0 jBPM5 integration layer) with the new one (based on the
SOA-5.3.1 jBPM5 integration layer).
The main difference between the two codebases is the session utilization
pattern. 5.3.0 uses a session-per-process-instance pattern, 5.3.1 uses a
session-per-process-definition pattern.
I did a test with a process that takes 4 sec to execute, using a JMS
listener with 20 threads of executions.
With the 5.3.0. code, it takes 90 sec to execute 380 process instances.
With the 5.3.1 code, it takes 27 min to execute 380 process instances.
The reason for this huge performance difference is simple: the 5.3.1
uses only one session, and the this session is synchronized (thus
single-threaded). So the benefit of using multiple threads of execution
in the ESB is lost.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:
http://www.atlassian.com/software/jira