[jboss-user] [jBPM] - Seeking guidance with Jbpm 5.3+ Clustering

Anindya Saha do-not-reply at jboss.com
Wed Aug 8 09:31:35 EDT 2012

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/jbpm.jpg  https://community.jboss.org/servlet/JiveServlet/downloadImage/2-752604-19175/450-80/jbpm.jpg 

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.


Reply to this message by going to Community

Start a new discussion in jBPM at Community

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-user/attachments/20120808/c68a11e7/attachment-0001.html 

More information about the jboss-user mailing list