JBoss.orgCommunity Documentation

Chapter 7. RiftSaw Clustering Support

7.1. Overview
7.2. Installation
7.3. Deployment
7.4. BPEL Process Service Invocation

To enable riftsaw to work in a clustered environment, all of the nodes within the cluster must be configured to use a shared database. This is to ensure all of the nodes have access to the shared information concerning the persistent state of process instances.

For the cluster to work correctly, it will also be necessary to employ a load balancer to distribute the incoming SOAP requests appropriately across all of the nodes in the server, as shown in the following diagram.

There are two ways to install a clustered version of riftsaw. The first approach is to simply set the org.jboss.as.config property in the ${RiftSaw}/install/deployment.properties file to all before deploying riftsaw into the JBossAS server.

However, if a different JBossAS config profile needs to be used, then it will be necessary to explicitly indicating that clustering is required. This is achieved by setting the system property clustering.support to true, e.g.

ant deploy -Dclustering.support=true ....)

Deploying a BPEL process into a clustered environment is different from deploying it into a single server. You have to copy your BPEL artifact (say hello_world.jar) into a farm folder. This is a special folder that the server uses to share deployable components across the nodes within the cluster. For example, the default farm folder in JBossAS is located here: ${JBossAS}/server/all/farm.

When invoking the BPEL service deployed in the clustering environment, you should specify the load balancer's url instead of the SOAP address specified in the wsdl file. The load balancer will then take care of deciding which server in the cluster to invoke.