Hi,

ODE is originally designed to be run in a clustered fashion, however it has
never been implemented in ODE. The goal would be to integrate a clustering
framework like Hazelcast in order to add this functionality.

The main integration points are the ODE scheduler and the process store.
The scheduler is already capable to handle several nodes but needs the
integration to know if cluster nodes are still present. The API currently
anticipates a heart beat model, with Hazelcast this might need to be
changed or adapted. The other part is the process store, which implements
the (hot-)deployment that is filesystem based. Under the assumption that a
distributed filesystem is used, the cluster implementation needs to take
care that only one single node (the master) is taking care of new
deployments, just in order to avoid multiple nodes doing the same thing in
parallel. Then there is also one lock that needs to be distributed, either
using database locks or a distributed lock (e.g. from hazelcast).

Addtional requirements would be the integration with our config file so
that a cluster (and its nodes) can be configured as well as some basic
monitoring. Also a basic test environment, e.g. based on Docker would be
very good to verify the approach.

So I guess the steps would be: 1. Research to find a suitable cluster
framework (I think Hazelcast would be a good fit) and getting familiar with
ODE and this framework. 2. Identify the integration points in ODE. 3. Based
on the chosen framework, develop approaches to serve these integration
points (We need leader election for the store, a distributed lock for the
runtime and the information whether nodes are joining or leaving the
cluster to be able to reschedule tasks from lost nodes) along with a
distributed setup to test. 4. Develop and test, 5. Test.

For questions regarding the integration points please feel free to ask
here, I can give you some pointers.

HTH,
  Tammo



On Tue, Mar 24, 2015 at 5:03 AM, sudharma subasinghe <[email protected]>
wrote:

> Hi,
>
> I am interested in this project as I have enough basic knowledge about
> apache axis2, apache ODE, WS-BPEL and I am currently studying those. So I
> appreciate if you can provide more details on project.
> Thank you
>



-- 
Tammo van Lessen - http://www.taval.de

Reply via email to