Anindya Saha [
https://community.jboss.org/people/anindyas79] created the discussion
"Seeking guidance with Jbpm 5.3+ Clustering"
To view the discussion, visit:
https://community.jboss.org/message/752604#752604
--------------------------------------------------------------
Hello Experts
We have been evaluating jBPM 5.2/5.3 for one of our large prestigious clients.They are
planning to migrate one of their complex workflow processes built on one of the leading
bpmn solution to jBPM 5.3, and we as architects are helping them in proposing suitable
architecture and design.
After much studying and analysis we feel confident that an application jBPM + Drools will
be able to be a successful replacement of the existing workflow process. However, we are
lacking confidence in one arena i.e. scalability and cluster-deployment. We are planning
to deploy jbpm on multiple Jboss instances and balance the load to the Jboss instances
using an Apache Http server. To test clusterability we designed a simple process as below.
A process which has two human tasks assigned to users john and mary and then a script
task.
https://community.jboss.org/servlet/JiveServlet/showImage/2-752604-19175/...
https://community.jboss.org/servlet/JiveServlet/downloadImage/2-752604-19...
Let us assume that there are two nodes N1 and N2. So when the user requests to create a
task the request reached node N1. The process is created with a new session in node N1.We
create the session using JPAKnowledgeService.+newStatefulKnowledgeSession+ The process
moves to Johns tasklist. Now lets say if user John logs in, he is directed to node N2 via
load balancer he can see the task and he can complete that. Since the session in node N2
is different than that of N1 when the process was created we have to call
JPAKnowledgeService.+loadStatefulKnowledgeSession+. Once John completes the task it moves
to mary. Now let’s say if user Mary logs in, she is directed to node N1 via load balancer
she can see the task and she can complete that. But after completion the task is not
moving to script task. Also in the processinstanceinfo table does not get emptied. The
problem is happening in case of zigzag direction of the request to different nodes.
However, if the apache httpd delegates all the subsequent requests after the process is
started to only Node N1 or only Node N2 then the entire chain gets completed.
Start (N1) -> John (N2) -> Mary (N1) does not work
Start (N1) -> John (N2) -> Mary (N2) works
Any suggestion or help in this regard would be really appreciated. Any pointers or links
to who have actually implemented clustering would help us a lot.
Thanks
Anindya
--------------------------------------------------------------
Reply to this message by going to Community
[
https://community.jboss.org/message/752604#752604]
Start a new discussion in jBPM at Community
[
https://community.jboss.org/choose-container!input.jspa?contentType=1&...]