AnsweredAssumed Answered

Re-engineering a legacy state machine with built in rules ...

Question asked by rkarnam on Jun 21, 2014
Latest reply on Aug 6, 2014 by rkarnam
Hi,

I have prototyped a simple app with a groovy script, a RESTService call using Service Task and mail task to send the user status. This is a prototype to propose using Activiti BPM to replace the legacy system. This legacy system can have a campaign similar to a workflow. This campaign can execute events and rules and based on certain parameters can persist the state of the campaign. lets say half a million members can be paneled into the campaign. Like wise there could 1000's of campaigns, where each campaign can panel half million members into it. The way each campaign wakes up is by a batch process that runs everyday. If the date is reached those campaigns continue to execute.

We have 36 instances of the server and it relies on 64 partitions of sybase database to store the customer info and each customer campaign state. Each customer can be part of serveral campaigns and each campaign can have hundreds of thousands to customers.

Is Activiti a viable solution for such an implementation ? I know it has state but mostly from a workflow perspective… will each customers workflow state be saved. Will all these millions of users be part of identity tables in activiti ?

I looked at jorambarrez performance article. The performance is driven by number of process per thread.  I am looking at 1000's of threads executing same workflow. I know we can create a cluster of servers. I am guessing database needs to be partitioned to support a large number of customer base. I need to run some load tests doing these.

Any thoughts ? Ideas ?

Also I was looking for enterprise support for Activiti. Signed up online did not get any reply. Although it said a download link with documentation was sent.

Outcomes