[jboss-dev-forums] [Design of JBoss ESB] - Cluster Singleton listeners

Welle do-not-reply at jboss.com
Mon Mar 10 10:42:02 EDT 2008


If several ESB instances are running with the same services deployed it seems to me that some event listeners needs to be cluster-singletons. (Only active on one node at the time)

For example if you use the ScheduledListener in your service and it's deployed on several ESB in a cluster they may trigger exact at the same time and that may be a problem if you can't allow that concurrency.

One solution is to only deploy the service on one of the ESB, but then you lose the high availability of the cluster. Is there any solution for this in the ESB?

A solution could be to extend the needed listener with the following Singleton solution (based on a JGroups stack shared by all nodes) before actual triggering:
Check for a parameter to the Listener that states an integer and check that against the JGroups list of members. If the current node is the member of the location pointed by the integer then go ahead and run otherwise stop. (If the integer is greater than the length of the list just execute your standard modulo operation). This will give the possibility to spread the load on several nodes and not just on the master. (As the Application Servers singelton service does)
  | 
  | /Anders W.

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4135316#4135316

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4135316



More information about the jboss-dev-forums mailing list