Hi all, I'd like to bring this topic up, https://issues.apache.org/jira/browse/ODE-563, I am going to work on this task, before I do this, I'd like to have a heads up at here.
Below is discussion that I found in the mail archive by Alex Boisvert, which I think it is very good summary in this area. " The Axis2 integration already supports *clustering*. (Well, maybe a better characterization is that it doesn't get in the way) There's a few things do to to support *clustering*. First thing would be to make the scheduler *cluster*-aware, to support work distribution (load balancing) across different nodes and to avoid contention. I suggested using Terracotta as a basis for this, but there may be other (and better) ways. If we want to get more performance out of the system, we can introduce varying levels of node affinity to reduce data shipping and improve cache efficiency within the *cluster*. This would probably entail some form of distributed lock manager, or a registry to redirect messages to process instances already loaded on *cluster* nodes. This is an area where integration with the messaging layer (Axis2) can help since you can establish "sessions" between clients and services to improve message routing and, again, cache efficiency. The persistence DAOs (OpenJPA and Hibernate) also support *clustering*today. Both can be configured to be *cluster*-aware and both support the more aggressive transparent *cluster* cache such as Terracotta, JBoss Cache, etc. Hope this helps, alex " >From above summary, I believe we have following sub-tasks for the clustering. 1. make cronScheduler cluster-aware. 2. simpleScheduler module's DAO need to be implemented as JPA based, so that it can support cluster. 3. make simple scheduler cluster-aware? Anything I am missing or mis-understanding here?? -- Cheers, Jeff Yu ---------------- blog: http://jeff.familyyu.net
